2026-04-25 19:16:48 +02:00
#!/bin/bash
# Deployment-Skript für jamulix.de
set -e
REMOTE_USER = " ${ USER } "
REMOTE_HOST = "jamulix.de"
REMOTE_DIR = "/var/www/jamulix.de/html"
LOCAL_DIR = "/home/dschlueter/neue_jamulix.de_landing_page/jamulix.de_webpage_2"
2026-04-26 02:38:50 +02:00
SSH_SOCKET = " /tmp/ssh-jamulix-deploy- $$ "
2026-10-07 09:55:02 +02:00
ERROR_PAGES = "401 403 404 500 502 503 504"
2026-04-26 02:38:50 +02:00
cleanup( ) {
ssh -S " $SSH_SOCKET " -O exit " $REMOTE_USER @ $REMOTE_HOST " 2>/dev/null || true
}
trap cleanup EXIT
2026-04-25 19:16:48 +02:00
echo " Starte Deployment auf $REMOTE_HOST ... "
2026-04-26 02:38:50 +02:00
# Einmalige Authentifizierung — alle folgenden SSH/rsync-Aufrufe nutzen diesen Socket
ssh -M -S " $SSH_SOCKET " -o "ControlPersist=5m" -fN " $REMOTE_USER @ $REMOTE_HOST "
2026-04-25 19:16:48 +02:00
cd " $LOCAL_DIR "
echo "Baue die Seite..."
npm run build
echo " Synchronisiere landingpage/ nach $REMOTE_USER @ $REMOTE_HOST : $REMOTE_DIR /landingpage/... "
2026-04-26 02:38:50 +02:00
rsync -av --delete -e " ssh -S $SSH_SOCKET " landingpage/ " $REMOTE_USER @ $REMOTE_HOST : $REMOTE_DIR /landingpage/ "
2026-04-25 19:16:48 +02:00
2026-10-07 20:07:24 +02:00
echo "Setze symbolischen Link: index.html → landingpage/index.html"
ssh -S " $SSH_SOCKET " " $REMOTE_USER @ $REMOTE_HOST " " rm -f ' $REMOTE_DIR /index.html' && ln -s landingpage/index.html ' $REMOTE_DIR /index.html' "
2026-04-25 19:16:48 +02:00
2026-10-08 14:46:29 +02:00
echo "Setze symbolischen Link: favicon.ico → landingpage/favicon.ico"
ssh -S " $SSH_SOCKET " " $REMOTE_USER @ $REMOTE_HOST " " rm -f ' $REMOTE_DIR /favicon.ico' && ln -s landingpage/favicon.ico ' $REMOTE_DIR /favicon.ico' "
2026-10-08 12:44:55 +02:00
# Next.js lädt unter / die RSC-Segmente ohne basePath (/__next.*.txt) — ebenfalls verlinken
echo "Setze symbolische Links: __next.*.txt → landingpage/__next.*.txt"
ssh -S " $SSH_SOCKET " " $REMOTE_USER @ $REMOTE_HOST " " cd ' $REMOTE_DIR ' && rm -f __next.*.txt && for f in landingpage/__next.*.txt; do ln -s \$f \$(basename \$f); done "
2026-10-07 09:55:02 +02:00
echo "Kopiere Fehlerseiten: landingpage/<code>.html → <code>.html"
ssh -S " $SSH_SOCKET " " $REMOTE_USER @ $REMOTE_HOST " " for c in $ERROR_PAGES ; do cp ' $REMOTE_DIR '/landingpage/\$c.html ' $REMOTE_DIR '/\$c.html; done "
2026-10-07 09:40:36 +02:00
2026-04-25 19:16:48 +02:00
echo ""
echo "Deployment abgeschlossen: https://jamulix.de"