fix(deploy): server-update.sh re-exec nach git pull (Self-Edit-Falle)
Security Audit / Python Dependency Audit (push) Has been cancelled
Security Audit / Node.js Dependency Audit (push) Has been cancelled

Skript zog sich per pull selbst neu, waehrend die alte Version noch lief →
Health-Check nutzte alten Code. Nach pull jetzt exec der frischen Version
(Marker _SU_REEXEC verhindert Doppel-Pull).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-08 16:47:58 +02:00
co-authored by Claude Opus 4.8
parent fad27cb9a9
commit 2c57c36abd
+10 -4
View File
@@ -35,11 +35,17 @@ cd "$REMOTE"
git config --global --add safe.directory "$REMOTE" 2>/dev/null || true git config --global --add safe.directory "$REMOTE" 2>/dev/null || true
# ── 1. Repo aktualisieren ───────────────────────────────────────────────────── # ── 1. Repo aktualisieren ─────────────────────────────────────────────────────
log "git pull --ff-only origin main" # Guard gegen "laufendes Skript editiert sich selbst": zuerst nur pullen, dann
if ! git pull --ff-only origin main; then # die frisch gezogene Version neu starten (Marker verhindert Doppel-Pull).
die "git pull fehlgeschlagen. Arbeitsbaum sauber? ('git status' prüfen, ggf. 'git stash')." if [[ -z "${_SU_REEXEC:-}" ]]; then
log "git pull --ff-only origin main"
if ! git pull --ff-only origin main; then
die "git pull fehlgeschlagen. Arbeitsbaum sauber? ('git status' prüfen, ggf. 'git stash')."
fi
log "Jetzt auf: $(git log --oneline -1)"
export _SU_REEXEC=1
exec bash "$REMOTE/server-update.sh" "$@" # frische Version übernimmt ab hier
fi fi
log "Jetzt auf: $(git log --oneline -1)"
# ── 2. Migration ────────────────────────────────────────────────────────────── # ── 2. Migration ──────────────────────────────────────────────────────────────
if $DO_MIGRATE; then if $DO_MIGRATE; then