#!/bin/bash set -e cd /opt/supersam echo "[$(date '+%Y-%m-%d %H:%M:%S')] Deploy starting..." # Pull latest from main git fetch origin main BEFORE=$(git rev-parse HEAD) git reset --hard origin/main AFTER=$(git rev-parse HEAD) if [ "$BEFORE" = "$AFTER" ]; then echo "[$(date '+%Y-%m-%d %H:%M:%S')] No changes, skipping rebuild." exit 0 fi echo "[$(date '+%Y-%m-%d %H:%M:%S')] Updated: ${BEFORE:0:7} -> ${AFTER:0:7}" # Rebuild and restart docker compose -f docker-compose.app.yml up -d --build # Wait for container to be healthy sleep 3 if docker ps --format '{{.Names}}' | grep -q 'supersam-app'; then echo "[$(date '+%Y-%m-%d %H:%M:%S')] Deploy complete. Container running." else echo "[$(date '+%Y-%m-%d %H:%M:%S')] ERROR: Container not running after deploy!" exit 1 fi