From a5c0bb1850232980a96ac889b31d6e7151e771e6 Mon Sep 17 00:00:00 2001 From: soufiane Date: Mon, 3 Nov 2025 20:18:02 +0100 Subject: [PATCH] =?UTF-8?q?Mise=20=C3=A0=20jour=20de=20index.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Jenkinsfile | 24 ++++++++++++++---------- index.js | 2 +- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 01873601..a1809748 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -6,7 +6,7 @@ pipeline { pollSCM('H/2 * * * *') } - // ⚙️ Choix de l’environnement de déploiement + // ⚙️ Choix de l’environnement de déploiement (par défaut : dev) parameters { choice( name: 'ENV', @@ -50,7 +50,7 @@ pipeline { } /* ─────────────────────────────── - * 3️⃣ Informations de contexte + * 3️⃣ Informations sur l’environnement * ─────────────────────────────── */ stage('Show Environment Info') { steps { @@ -74,7 +74,7 @@ pipeline { } /* ─────────────────────────────── - * 5️⃣ Envoi au registre Docker privé + * 5️⃣ Envoi de l’image au registre privé * ─────────────────────────────── */ stage('Push to Registry') { steps { @@ -97,6 +97,7 @@ pipeline { echo "💾 Exécution du script de sauvegarde avant déploiement..." sh ''' if [ -f /srv/devops/the-tip-top/backup.sh ]; then + echo "▶️ Lancement du script de sauvegarde..." bash /srv/devops/the-tip-top/backup.sh else echo "⚠️ Aucun script backup.sh trouvé, déploiement sans sauvegarde." @@ -112,13 +113,18 @@ pipeline { steps { echo "🚀 Déploiement du backend sur ${params.ENV}..." 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}" exit 1 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 + + echo "🔁 Redémarrage du conteneur backend..." docker compose up -d --force-recreate backend ''' } @@ -146,16 +152,14 @@ pipeline { if (statusCode in ['200', '301', '302']) { echo "✅ Backend ${params.ENV} opérationnel (HTTP ${statusCode}) après ${i} essai(s)" - break + return } else { 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}") } } } diff --git a/index.js b/index.js index b8628163..e14ba45f 100644 --- a/index.js +++ b/index.js @@ -34,7 +34,7 @@ app.get("/db-check", async (req, res) => { // --- Route d’accueil (fix pour 'Cannot GET /') --- 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 ---