fix(deploy): export build-hash inside ssh-subshell
Vorher: 'VAR=val ssh host "command"' — die env-vars galten nur für den ssh-Aufruf selbst, nicht für die Remote-Shell, die 'command' ausführt. docker-compose bekam die env-vars nicht, und der Dockerfile-RUN fiel auf den Default 'dev' zurück. Fix: ssh-Argument enthält explizites 'export VAR=val && command', damit die Variable in der Remote-Shell sichtbar ist. Build-Hash fließt jetzt korrekt durch und erscheint im Footer aller Seiten.
This commit is contained in:
+3
-2
@@ -49,9 +49,10 @@ BUILD_DATE=$(date -u +%Y-%m-%d)
|
|||||||
echo " Commit: $COMMIT_HASH · Date: $BUILD_DATE"
|
echo " Commit: $COMMIT_HASH · Date: $BUILD_DATE"
|
||||||
|
|
||||||
echo "→ Baue und starte Container auf $VPS_HOST neu"
|
echo "→ Baue und starte Container auf $VPS_HOST neu"
|
||||||
ssh "$VPS_HOST" "cd '$VPS_DIR' && \
|
ssh "$VPS_HOST" "export NEXT_PUBLIC_BUILD_HASH='$COMMIT_HASH' && \
|
||||||
|
export NEXT_PUBLIC_BUILD_DATE='$BUILD_DATE' && \
|
||||||
|
cd '$VPS_DIR' && \
|
||||||
[ -f .env.local ] || { echo 'FEHLT: .env.local auf dem VPS — bitte anlegen'; exit 1; } && \
|
[ -f .env.local ] || { echo 'FEHLT: .env.local auf dem VPS — bitte anlegen'; exit 1; } && \
|
||||||
NEXT_PUBLIC_BUILD_HASH=$COMMIT_HASH NEXT_PUBLIC_BUILD_DATE=$BUILD_DATE \
|
|
||||||
docker compose build app && \
|
docker compose build app && \
|
||||||
docker compose up -d app && \
|
docker compose up -d app && \
|
||||||
docker image prune -f"
|
docker image prune -f"
|
||||||
|
|||||||
Reference in New Issue
Block a user