Mise à jour de index.js

This commit is contained in:
soufiane 2025-11-03 20:18:02 +01:00
parent 72440a7af5
commit a5c0bb1850
2 changed files with 15 additions and 11 deletions

24
Jenkinsfile vendored
View File

@ -6,7 +6,7 @@ pipeline {
pollSCM('H/2 * * * *') pollSCM('H/2 * * * *')
} }
// ⚙️ Choix de lenvironnement de déploiement // ⚙️ Choix de lenvironnement de déploiement (par défaut : dev)
parameters { parameters {
choice( choice(
name: 'ENV', name: 'ENV',
@ -50,7 +50,7 @@ pipeline {
} }
/* ─────────────────────────────── /* ───────────────────────────────
* 3⃣ Informations de contexte * 3⃣ Informations sur lenvironnement
* ─────────────────────────────── */ * ─────────────────────────────── */
stage('Show Environment Info') { stage('Show Environment Info') {
steps { steps {
@ -74,7 +74,7 @@ pipeline {
} }
/* ─────────────────────────────── /* ───────────────────────────────
* 5⃣ Envoi au registre Docker privé * 5⃣ Envoi de limage au registre privé
* ─────────────────────────────── */ * ─────────────────────────────── */
stage('Push to Registry') { stage('Push to Registry') {
steps { steps {
@ -97,6 +97,7 @@ pipeline {
echo "💾 Exécution du script de sauvegarde avant déploiement..." echo "💾 Exécution du script de sauvegarde avant déploiement..."
sh ''' sh '''
if [ -f /srv/devops/the-tip-top/backup.sh ]; then if [ -f /srv/devops/the-tip-top/backup.sh ]; then
echo "▶️ Lancement du script de sauvegarde..."
bash /srv/devops/the-tip-top/backup.sh bash /srv/devops/the-tip-top/backup.sh
else else
echo "⚠️ Aucun script backup.sh trouvé, déploiement sans sauvegarde." echo "⚠️ Aucun script backup.sh trouvé, déploiement sans sauvegarde."
@ -112,13 +113,18 @@ pipeline {
steps { steps {
echo "🚀 Déploiement du backend sur ${params.ENV}..." echo "🚀 Déploiement du backend sur ${params.ENV}..."
sh ''' sh '''
if [ ! -f ${DEPLOY_PATH}/docker-compose.yml ]; then if [ ! -f "${DEPLOY_PATH}/docker-compose.yml" ]; then
echo "❌ Fichier docker-compose.yml introuvable dans ${DEPLOY_PATH}" echo "❌ Fichier docker-compose.yml introuvable dans ${DEPLOY_PATH}"
exit 1 exit 1
fi fi
cd ${DEPLOY_PATH} echo "📁 Déploiement dans ${DEPLOY_PATH}..."
cd "${DEPLOY_PATH}"
echo "⬇️ Récupération de la dernière image..."
docker compose pull backend docker compose pull backend
echo "🔁 Redémarrage du conteneur backend..."
docker compose up -d --force-recreate backend docker compose up -d --force-recreate backend
''' '''
} }
@ -146,16 +152,14 @@ pipeline {
if (statusCode in ['200', '301', '302']) { if (statusCode in ['200', '301', '302']) {
echo "✅ Backend ${params.ENV} opérationnel (HTTP ${statusCode}) après ${i} essai(s)" echo "✅ Backend ${params.ENV} opérationnel (HTTP ${statusCode}) après ${i} essai(s)"
break return
} else { } else {
echo "⏳ Tentative ${i}/${maxRetries} → HTTP ${statusCode}" echo "⏳ Tentative ${i}/${maxRetries} → HTTP ${statusCode}"
sleep 5 sleep(time: 5, unit: 'SECONDS')
} }
} }
if (!(statusCode in ['200', '301', '302'])) { error("❌ Health check échoué sur ${params.ENV} - code HTTP ${statusCode}")
error("❌ Health check échoué sur ${params.ENV} - code HTTP ${statusCode}")
}
} }
} }
} }

View File

@ -34,7 +34,7 @@ app.get("/db-check", async (req, res) => {
// --- Route daccueil (fix pour 'Cannot GET /') --- // --- Route daccueil (fix pour 'Cannot GET /') ---
app.get("/", (req, res) => { app.get("/", (req, res) => {
res.json({ message: "✅ API Thé Tip Top en ligne et opérationnelle 100001 !" }); res.json({ message: "✅ API Thé Tip Top en ligne et opérationnelle 1001001 !" });
}); });
// --- Monitoring Prometheus --- // --- Monitoring Prometheus ---