← back to Interiordesignershowroom
deploy/push-full-kamatera.sh
25 lines
#!/usr/bin/env bash
# Full-source push of interiordesignershowroom to Kamatera, then pm2 reload + verify.
# Pushes ALL source (not one file) so local-only modules like lib/assetv.js can't be
# left behind — the divergence that 502'd a per-file deploy on 2026-08-03.
# SAFE: excludes node_modules/.env/.git/logs; NO --delete (never removes prod-only files).
set -euo pipefail
HOST="root@45.61.58.125"
DEST="/root/Projects/interiordesignershowroom"
APP="interiordesignershowroom"
cd "$(dirname "$0")/.."
echo "== rsync full source -> $HOST:$DEST =="
rsync -az \
--exclude node_modules --exclude .git --exclude '.env*' \
--exclude '*.log' --exclude .DS_Store --exclude 'tmp/' \
./ "$HOST:$DEST/"
echo "== pm2 reload $APP =="
ssh "$HOST" "cd $DEST && pm2 reload $APP --update-env"
echo "== verify live =="
sleep 2
curl -s -m 15 -o /dev/null -w "live HTTP %{http_code}\n" https://interiordesignershowroom.com/
echo -n "gtag present: "; curl -s -m 15 https://interiordesignershowroom.com/ | grep -oE 'G-[A-Z0-9]{6,}' | head -1 || echo "(none)"