Mise à jour de index.js
This commit is contained in:
parent
4312633bdb
commit
3e6bd6e409
40
Jenkinsfile
vendored
40
Jenkinsfile
vendored
|
|
@ -1,17 +1,15 @@
|
||||||
pipeline {
|
pipeline {
|
||||||
agent any
|
agent any
|
||||||
|
|
||||||
// 🔁 Vérifie le code toutes les minutes (ou via Webhook Gitea)
|
|
||||||
triggers {
|
triggers {
|
||||||
pollSCM('* * * * *')
|
// Vérifie toutes les 2 minutes les changements sur Gitea
|
||||||
|
pollSCM('H/2 * * * *')
|
||||||
}
|
}
|
||||||
|
|
||||||
// ⚙️ Paramètre pour choisir l’environnement
|
|
||||||
parameters {
|
parameters {
|
||||||
choice(name: 'ENV', choices: ['dev', 'preprod', 'prod'], description: 'Choisir l’environnement de déploiement')
|
choice(name: 'ENV', choices: ['dev', 'preprod', 'prod'], description: 'Choisir l’environnement de déploiement')
|
||||||
}
|
}
|
||||||
|
|
||||||
// 🌍 Variables globales
|
|
||||||
environment {
|
environment {
|
||||||
REGISTRY_URL = "registry.wk-archi-o24a-15m-g3.fr"
|
REGISTRY_URL = "registry.wk-archi-o24a-15m-g3.fr"
|
||||||
IMAGE_NAME = "the-tip-top-backend"
|
IMAGE_NAME = "the-tip-top-backend"
|
||||||
|
|
@ -20,10 +18,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 1️⃣ Checkout du code source
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Checkout') {
|
stage('Checkout') {
|
||||||
steps {
|
steps {
|
||||||
echo "📦 Récupération du code source depuis Gitea..."
|
echo "📦 Récupération du code source depuis Gitea..."
|
||||||
|
|
@ -31,9 +25,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 2️⃣ Tests qualité et unitaires
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Tests & Qualité') {
|
stage('Tests & Qualité') {
|
||||||
steps {
|
steps {
|
||||||
echo "🧪 Lancement des tests et analyse de code..."
|
echo "🧪 Lancement des tests et analyse de code..."
|
||||||
|
|
@ -45,9 +36,14 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
stage('Show Environment Info') {
|
||||||
* 3️⃣ Build de l’image Docker
|
steps {
|
||||||
* ─────────────────────────────── */
|
echo "🌍 Environnement : ${params.ENV}"
|
||||||
|
echo "📦 Image : ${REGISTRY_URL}/${IMAGE_NAME}:${TAG}"
|
||||||
|
echo "📂 Dossier de déploiement : ${DEPLOY_PATH}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
stage('Build Docker image') {
|
stage('Build Docker image') {
|
||||||
steps {
|
steps {
|
||||||
echo "🐳 Construction de l’image Docker backend..."
|
echo "🐳 Construction de l’image Docker backend..."
|
||||||
|
|
@ -58,9 +54,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 4️⃣ Push vers le registre privé
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Push to Registry') {
|
stage('Push to Registry') {
|
||||||
steps {
|
steps {
|
||||||
echo "📤 Envoi de l’image vers le registre Docker privé..."
|
echo "📤 Envoi de l’image vers le registre Docker privé..."
|
||||||
|
|
@ -74,9 +67,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 5️⃣ Sauvegarde avant déploiement
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Backup Before Deploy') {
|
stage('Backup Before Deploy') {
|
||||||
steps {
|
steps {
|
||||||
echo "💾 Exécution du script de sauvegarde avant déploiement..."
|
echo "💾 Exécution du script de sauvegarde avant déploiement..."
|
||||||
|
|
@ -90,9 +80,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 6️⃣ Déploiement du backend
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Deploy') {
|
stage('Deploy') {
|
||||||
steps {
|
steps {
|
||||||
echo "🚀 Déploiement du backend sur ${params.ENV}..."
|
echo "🚀 Déploiement du backend sur ${params.ENV}..."
|
||||||
|
|
@ -109,9 +96,6 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ───────────────────────────────
|
|
||||||
* 7️⃣ Vérification du déploiement
|
|
||||||
* ─────────────────────────────── */
|
|
||||||
stage('Health Check') {
|
stage('Health Check') {
|
||||||
steps {
|
steps {
|
||||||
echo "🩺 Vérification du backend après déploiement..."
|
echo "🩺 Vérification du backend après déploiement..."
|
||||||
|
|
@ -129,7 +113,7 @@ pipeline {
|
||||||
returnStdout: true
|
returnStdout: true
|
||||||
).trim()
|
).trim()
|
||||||
|
|
||||||
if (statusCode == '200') {
|
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
|
break
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -138,7 +122,7 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (statusCode != '200') {
|
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}")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
2
index.js
2
index.js
|
|
@ -34,7 +34,7 @@ app.get("/db-check", async (req, res) => {
|
||||||
|
|
||||||
// --- Route d’accueil (fix pour 'Cannot GET /') ---
|
// --- Route d’accueil (fix pour 'Cannot GET /') ---
|
||||||
app.get("/", (req, res) => {
|
app.get("/", (req, res) => {
|
||||||
res.json({ message: "✅ API Thé Tip Top en ligne et opérationnelle 000 !" });
|
res.json({ message: "✅ API Thé Tip Top en ligne et opérationnelle 1000 !" });
|
||||||
});
|
});
|
||||||
|
|
||||||
// --- Monitoring Prometheus ---
|
// --- Monitoring Prometheus ---
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user