Files
scoreodonto.com/deploy-prod-builder.sh
T
VPS 4 Builder 13d5a8d8ab
continuous-integration/webhook Deploy de scoreodonto.com concluido com sucesso (VPS 4)
fix(deploy): buildar na VPS4 — Traefik aponta para 10.99.0.4:8020, não VPS1
2026-05-15 08:49:17 +02:00

61 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
# ─── deploy-prod-builder.sh (ScoreOdonto) ────────────────────────────────────
# Script sênior de automação de build e despacho (GitOps) de VPS 4 -> VPS 1.
# ─────────────────────────────────────────────────────────────────────────────
set -e
LOCK_FILE="/tmp/deploy-prod-scoreodonto.lock"
if [ -f "$LOCK_FILE" ]; then
echo "🚨 Deploy já está em andamento! Aguarde..."
exit 1
fi
touch "$LOCK_FILE"
# Garante que o lock file será apagado no final do script mesmo se houver erro
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')] [SCOREODONTO] $1" | tee -a "$LOG_FILE"
}
log "🚀 Iniciando ciclo de build e deploy automático para ScoreOdonto..."
# 1. Atualizar repositório Git
log "📦 Sincronizando repositório Git local na VPS 4..."
cd /home/deploy/stack/scoreodonto.com
git fetch origin main
git reset --hard origin/main
# 1.1 Incrementar versão
log "🔢 Incrementando versão..."
node update-version.js
# 2. Compilar o Backend
log "⚙️ Instalando dependências e preparando o Backend..."
cd /home/deploy/stack/scoreodonto.com/backend
npm install
# Prisma removido — backend usa pg nativo, schema.prisma é legado
# 2.1 Compilar os Plugins
log "⚙️ Compilando os Plugins da plataforma..."
cd /home/deploy/stack/scoreodonto.com/plugins
if [ -f "/home/deploy/stack/scoreodonto.com/backend/node_modules/.bin/tsc" ]; then
/home/deploy/stack/scoreodonto.com/backend/node_modules/.bin/tsc -p tsconfig.json || true
fi
# 4. Reconstruir containers localmente na VPS 4 (servidor de produção)
log "🔄 Reconstruindo containers na VPS 4 (produção real)..."
cd /home/deploy/stack/scoreodonto.com
docker compose up -d --build
# 6. Salvar incremento de versão no Git
log "💾 Comitando o incremento de versão de volta para o repositório central..."
cd /home/deploy/stack/scoreodonto.com
git add frontend/constants.ts
git commit -m "chore(deploy): bump version"
git push origin main
log "✅ Deploy de ScoreOdonto concluído com absoluto sucesso!"