Deploy: validate s ignore pending + workflow si sám aktualizuje deploy.sh
Some checks failed
CI and deploy / migration-check (push) Successful in 5m2s
CI and deploy / deploy (push) Failing after 3m27s

deploy.sh validate selhával na nové/změněné repeatable (flyway 12: pending =
error), kterou má hned následující migrate aplikovat → -ignoreMigrationPatterns
'*:pending'. Workflow deploy step nově nejdřív resetne checkout a nainstaluje
ROOT kopii deploy.sh z repa — opravy skriptu se propagují bez ručního zásahu
na serveru (deploy.sh fetch/reset zopakuje idempotentně).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dusan Vojacek
2026-06-11 22:45:41 +02:00
parent 4d1313a3bc
commit e7b87fbabd
2 changed files with 12 additions and 2 deletions

View File

@@ -78,7 +78,15 @@ jobs:
ls -ld /opt/ems-deploy
- name: Run deploy script
run: bash /opt/ems-deploy/deploy.sh
# Nejdřív aktualizovat checkout + ROOT kopii skriptu z repa (jinak by
# opravy deploy.sh nikdy nedoputovaly na server — skript se spouští
# z /opt/ems-deploy, ne z checkoutu). deploy.sh pak fetch/reset zopakuje
# idempotentně.
run: |
git -c safe.directory=/opt/ems-deploy/app -C /opt/ems-deploy/app fetch origin
git -c safe.directory=/opt/ems-deploy/app -C /opt/ems-deploy/app reset --hard origin/main
install -m 0755 /opt/ems-deploy/app/deploy/deploy.sh /opt/ems-deploy/deploy.sh
bash /opt/ems-deploy/deploy.sh
# Alternativa: runner v Dockeru bez přístupu k hostu — odkomentovat a upravit SERVER + secrets.
# deploy-ssh: