Mise à jour de index.js
This commit is contained in:
parent
687fa5e57d
commit
72440a7af5
46
Jenkinsfile
vendored
46
Jenkinsfile
vendored
|
|
@ -1,15 +1,21 @@
|
||||||
pipeline {
|
pipeline {
|
||||||
agent any
|
agent any
|
||||||
|
|
||||||
|
// 🔁 Vérifie automatiquement toutes les 2 minutes s’il y a des commits sur Gitea
|
||||||
triggers {
|
triggers {
|
||||||
// Vérifie toutes les 2 minutes les changements sur Gitea
|
|
||||||
pollSCM('H/2 * * * *')
|
pollSCM('H/2 * * * *')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ⚙️ Choix de l’environnement de déploiement
|
||||||
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"
|
||||||
|
|
@ -18,6 +24,10 @@ pipeline {
|
||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 1️⃣ Récupération 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..."
|
||||||
|
|
@ -25,6 +35,9 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 2️⃣ Tests de 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..."
|
||||||
|
|
@ -36,6 +49,9 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 3️⃣ Informations de contexte
|
||||||
|
* ─────────────────────────────── */
|
||||||
stage('Show Environment Info') {
|
stage('Show Environment Info') {
|
||||||
steps {
|
steps {
|
||||||
echo "🌍 Environnement : ${params.ENV}"
|
echo "🌍 Environnement : ${params.ENV}"
|
||||||
|
|
@ -44,29 +60,38 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 4️⃣ Construction de l’image Docker
|
||||||
|
* ─────────────────────────────── */
|
||||||
stage('Build Docker image') {
|
stage('Build Docker image') {
|
||||||
steps {
|
steps {
|
||||||
echo "🐳 Construction de l’image Docker backend..."
|
echo "🐳 Construction de l’image Docker backend..."
|
||||||
sh '''
|
sh """
|
||||||
docker build -t ${REGISTRY_URL}/${IMAGE_NAME}:${TAG} .
|
docker build -t ${REGISTRY_URL}/${IMAGE_NAME}:${TAG} .
|
||||||
docker tag ${REGISTRY_URL}/${IMAGE_NAME}:${TAG} ${REGISTRY_URL}/${IMAGE_NAME}:latest
|
docker tag ${REGISTRY_URL}/${IMAGE_NAME}:${TAG} ${REGISTRY_URL}/${IMAGE_NAME}:latest
|
||||||
'''
|
"""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 5️⃣ Envoi au registre Docker 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é..."
|
||||||
withCredentials([usernamePassword(credentialsId: 'registry-credentials', usernameVariable: 'REG_USER', passwordVariable: 'REG_PASS')]) {
|
withCredentials([usernamePassword(credentialsId: 'registry-credentials', usernameVariable: 'REG_USER', passwordVariable: 'REG_PASS')]) {
|
||||||
sh '''
|
sh """
|
||||||
echo "$REG_PASS" | docker login ${REGISTRY_URL} -u "$REG_USER" --password-stdin
|
echo "$REG_PASS" | docker login ${REGISTRY_URL} -u "$REG_USER" --password-stdin
|
||||||
docker push ${REGISTRY_URL}/${IMAGE_NAME}:${TAG}
|
docker push ${REGISTRY_URL}/${IMAGE_NAME}:${TAG}
|
||||||
docker push ${REGISTRY_URL}/${IMAGE_NAME}:latest
|
docker push ${REGISTRY_URL}/${IMAGE_NAME}:latest
|
||||||
'''
|
"""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 6️⃣ 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..."
|
||||||
|
|
@ -80,6 +105,9 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 7️⃣ Déploiement Docker Compose
|
||||||
|
* ─────────────────────────────── */
|
||||||
stage('Deploy') {
|
stage('Deploy') {
|
||||||
steps {
|
steps {
|
||||||
echo "🚀 Déploiement du backend sur ${params.ENV}..."
|
echo "🚀 Déploiement du backend sur ${params.ENV}..."
|
||||||
|
|
@ -96,6 +124,9 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 8️⃣ 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..."
|
||||||
|
|
@ -130,6 +161,9 @@ pipeline {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ───────────────────────────────
|
||||||
|
* 🔚 Post actions
|
||||||
|
* ─────────────────────────────── */
|
||||||
post {
|
post {
|
||||||
success {
|
success {
|
||||||
echo "✅ Pipeline backend ${params.ENV} terminé avec succès !"
|
echo "✅ Pipeline backend ${params.ENV} terminé avec succès !"
|
||||||
|
|
|
||||||
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 10000 !" });
|
res.json({ message: "✅ API Thé Tip Top en ligne et opérationnelle 100001 !" });
|
||||||
});
|
});
|
||||||
|
|
||||||
// --- Monitoring Prometheus ---
|
// --- Monitoring Prometheus ---
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user