Fix Jenkinsfile: force recreate + health check

This commit is contained in:
soufiane 2025-10-30 20:45:45 +01:00
parent a330419d68
commit 53fb215ba0

12
Jenkinsfile vendored
View File

@ -14,7 +14,6 @@ pipeline {
} }
stages { stages {
stage('Checkout') { stage('Checkout') {
steps { steps {
echo "📦 Récupération du code source depuis Gitea..." echo "📦 Récupération du code source depuis Gitea..."
@ -73,20 +72,21 @@ pipeline {
script { script {
def success = false def success = false
for (int i = 1; i <= 5; i++) { for (int i = 1; i <= 5; i++) {
echo "⏳ Tentative #${i} de vérification (attente ${i * 10}s)..." echo "⏳ Tentative #${i} (attente ${i * 10}s)..."
sh "sleep ${i * 10}" sh "sleep ${i * 10}"
// Utilisation de --insecure pour éviter le problème HTTPS dans node:20
def code = sh(script: "curl --insecure -s -o /dev/null -w '%{http_code}' https://dsp5-archi-o24a-15m-g3.fr", returnStdout: true).trim() // ✅ Test via Jenkins lui-même (pas le conteneur node)
def code = sh(script: "docker exec jenkins curl --insecure -s -o /dev/null -w '%{http_code}' https://dsp5-archi-o24a-15m-g3.fr", returnStdout: true).trim()
echo "Réponse HTTP : ${code}" echo "Réponse HTTP : ${code}"
if (code == '200' || code == '301' || code == '302') { if (code == '200' || code == '301' || code == '302') {
success = true success = true
break break
} }
} }
if (!success) { if (!success) {
error("❌ Le frontend ne répond pas après plusieurs tentatives.") error("❌ Le frontend ne répond pas après plusieurs tentatives.")
} else {
echo "✅ Le frontend est disponible et en ligne !"
} }
} }
} }