Files
GhostGrid/deploy/deploy.sh
Brückner 2a2902d5bc feat(ui): distinguish dev/prod via VITE_DEPLOY_ENV
Both instances run with NODE_ENV=production, so import.meta.env.PROD was
always true and the header always showed 'Production'. deploy.sh now passes
VITE_DEPLOY_ENV=<branch> into the build and Header reads it to label the
system indicator dev vs prod correctly.
2026-06-09 13:09:03 +02:00

23 lines
706 B
Bash

#!/usr/bin/env bash
# Pull latest, rebuild, bounce the service. Works for both instances:
# deploy.sh -> main (prod, /opt/ghostgrid, port 3000)
# deploy.sh dev -> dev (stage, /opt/ghostgrid-dev, port 3001)
set -euo pipefail
BRANCH="${1:-main}"
case "$BRANCH" in
main) DIR=/opt/ghostgrid; SVC=ghostgrid ;;
dev) DIR=/opt/ghostgrid-dev; SVC=ghostgrid-dev ;;
*) echo "usage: deploy.sh [main|dev]"; exit 1 ;;
esac
cd "$DIR"
git fetch --prune origin
git checkout "$BRANCH"
git pull --ff-only origin "$BRANCH"
npm ci
VITE_DEPLOY_ENV="$BRANCH" npm run build
sudo systemctl restart "$SVC"
echo "Deployed $BRANCH ($SVC). Status:"
systemctl --no-pager status "$SVC" | head -n 5