#!/bin/sh set -e # Script d'entrĂ©e pour le container RegisFlow echo "🚀 DĂ©marrage de RegisFlow..." # Attendre que la base de donnĂ©es Docker soit prĂȘte echo "📡 Attente de la base de donnĂ©es regisflow-db..." echo "🔍 Test de connexion Ă  regisflow-db:5432..." # Attendre jusqu'Ă  120 secondes pour PostgreSQL Docker RETRIES=24 while [ $RETRIES -gt 0 ]; do if pg_isready -h regisflow-db -p 5432 -U regisflow; then echo "✅ PostgreSQL regisflow-db est prĂȘt!" break fi echo "⏳ Base de donnĂ©es non prĂȘte, tentative $((25-RETRIES))/24, attente de 5 secondes..." sleep 5 RETRIES=$((RETRIES-1)) done if [ $RETRIES -eq 0 ]; then echo "❌ Timeout: Impossible de se connecter Ă  regisflow-db aprĂšs 2 minutes" echo "🔍 Diagnostic:" echo " - VĂ©rifiez que le service regisflow-db dĂ©marre correctement" echo " - VĂ©rifiez les logs: docker-compose logs regisflow-db" exit 1 fi echo "✅ Base de donnĂ©es prĂȘte!" # ExĂ©cuter les migrations de base de donnĂ©es echo "🔄 ExĂ©cution des migrations..." npx drizzle-kit push # CrĂ©er le rĂ©pertoire des sauvegardes s'il n'existe pas mkdir -p /app/backups # Construire l'application pour la production echo "🔹 Construction de l'application..." npm run build # DĂ©marrer l'application en production echo "🎯 DĂ©marrage de l'application RegisFlow..." exec npm run start