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-$$"
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
echo "Setze symbolischen Link: index.html → landingpage/index.html"
|
2026-04-26 02:38:50 +02:00
|
|
|
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
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
echo "Deployment abgeschlossen: https://jamulix.de"
|