diff --git a/Jenkinsfile b/Jenkinsfile index 5fe81719..442c3571 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,69 +1,58 @@ pipeline { - agent { - docker { - image 'node:20' - args '-v /var/run/docker.sock:/var/run/docker.sock' - } - } - + agent any environment { - APP_NAME = "the-tip-top-backend" REGISTRY = "registry.wk-archi-o24a-15m-g3.fr" - IMAGE = "${REGISTRY}/${APP_NAME}:${BUILD_NUMBER}" - DEPLOY_PATH = "/srv/devops/the-tip-top" + IMAGE_NAME = "the-tip-top-backend" } stages { - stage('Checkout') { steps { - echo "📩 RĂ©cupĂ©ration du code source depuis Gitea..." + echo "📩 RĂ©cupĂ©ration du code source..." checkout scm } } - stage('Install dependencies') { - steps { - echo "📩 Installation des dĂ©pendances NPM..." - sh 'npm ci' - } - } - stage('Build Docker image') { steps { - echo "🐳 Construction et tag de l’image Docker..." - sh 'docker build -t ${IMAGE} .' + echo "🐳 Construction de l’image Docker backend..." + sh """ + docker build -t ${REGISTRY}/${IMAGE_NAME}:${BUILD_NUMBER} backend + docker tag ${REGISTRY}/${IMAGE_NAME}:${BUILD_NUMBER} ${REGISTRY}/${IMAGE_NAME}:latest + """ } } stage('Push to Registry') { steps { - echo "đŸ“€ Envoi de l’image vers le registry privĂ©..." - withCredentials([usernamePassword(credentialsId: 'registry-creds', usernameVariable: 'USER', passwordVariable: 'PASS')]) { - sh 'echo $PASS | docker login $REGISTRY -u $USER --password-stdin' - sh 'docker push $IMAGE' + echo "đŸ“€ Envoi de l’image vers le registre privĂ©..." + withCredentials([usernamePassword(credentialsId: 'registry-credentials', usernameVariable: 'REG_USER', passwordVariable: 'REG_PASS')]) { + sh """ + echo $REG_PASS | docker login ${REGISTRY} -u $REG_USER --password-stdin + docker push ${REGISTRY}/${IMAGE_NAME}:${BUILD_NUMBER} + docker push ${REGISTRY}/${IMAGE_NAME}:latest + """ } } } stage('Deploy') { steps { - echo "🚀 DĂ©ploiement du backend via Docker Compose..." + echo "🚀 DĂ©ploiement du backend..." sh """ - cd ${DEPLOY_PATH} docker compose pull backend - docker compose up -d --no-deps --build backend + docker compose up -d --force-recreate backend """ } } } post { - success { - echo "✅ DĂ©ploiement du backend rĂ©ussi !" - } failure { echo "❌ Échec du pipeline backend." } + success { + echo "✅ DĂ©ploiement backend rĂ©ussi." + } } }