#!/bin/bash # ─── deploy-prod-builder-mercado.sh ────────────────────────────────────────── # Script modelo para o ecossistema Clube67. # Realiza build multi-frontend e sincronização VPS 4 -> VPS 1. # ───────────────────────────────────────────────────────────────────────────── set -e LOCK_FILE="/tmp/deploy-prod-mercado.lock" if [ -f "$LOCK_FILE" ]; then echo "🚨 Deploy já está em andamento! Aguarde..." exit 1 fi touch "$LOCK_FILE" trap 'rm -f "$LOCK_FILE"' EXIT LOG_FILE="/home/deploy/stack/webhook-listener/deploy.log" log() { echo "[$(date -u +'%Y-%m-%dT%H:%M:%SZ')] [MERCADO] $1" | tee -a "$LOG_FILE" } log "🚀 Iniciando ciclo de build e deploy automático para MERCADO..." # 1. Sincronizar repositório Git local cd /home/deploy/stack/mercado.clube67.com git pull origin main # 2. Build Frontends (Admin, Customer, SuperAdmin) for app in admin customer superadmin; do log "⚙️ Compilando Frontend: $app..." cd "/home/deploy/stack/mercado.clube67.com/frontend/$app" npm install npm run build done # 3. Reiniciar contêineres de Dev localmente na VPS 4 log "🔄 Reiniciando contêineres de DEV na VPS 4..." docker compose -f /home/deploy/stack/mercado.clube67.com/docker-compose-dev.yml up -d --build log "✅ Deploy em DEV concluído com sucesso!"