45 lines
1.2 KiB
Bash
Executable File
45 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
REMOTE_HOST="serve"
|
|
REMOTE_APP_DIR="/home/serve/services/movies"
|
|
REMOTE_PORT=3001
|
|
|
|
echo "==> Installing local dependencies..."
|
|
bun install
|
|
|
|
echo "==> Building client bundle + CSS + assets..."
|
|
bun run build
|
|
|
|
echo "==> Syncing to ${REMOTE_HOST}:${REMOTE_APP_DIR} ..."
|
|
rsync -avz --delete \
|
|
--exclude='.DS_Store' \
|
|
--exclude='.git/' \
|
|
--exclude='AI_AGENT_REPORT.md' \
|
|
--exclude='LEARNINGS.md' \
|
|
--exclude='tests/' \
|
|
--exclude='.env' \
|
|
--exclude='.env.example' \
|
|
--exclude='deploy.sh' \
|
|
--exclude='scripts/' \
|
|
--exclude='memory/' \
|
|
--exclude='setup-db.sql' \
|
|
--exclude='data/' \
|
|
--exclude='/index.html' \
|
|
--exclude='/index.php' \
|
|
--exclude='/api.php' \
|
|
--exclude='/styles.css' \
|
|
--exclude='/app.js' \
|
|
--exclude='/algorithm.js' \
|
|
--exclude='/round-state.js' \
|
|
--exclude='/tsconfig.json' \
|
|
./ "${REMOTE_HOST}:${REMOTE_APP_DIR}/"
|
|
|
|
echo "==> Installing server dependencies on remote..."
|
|
ssh "${REMOTE_HOST}" "cd ${REMOTE_APP_DIR} && bun install --production"
|
|
|
|
echo "==> Restarting service..."
|
|
ssh "${REMOTE_HOST}" "systemctl --user restart movie-select 2>/dev/null || true"
|
|
|
|
echo "Done. Live at https://serve.uber.space/movies/"
|