diff --git a/jenkinsfile b/jenkinsfile index 12a4762..5927676 100644 --- a/jenkinsfile +++ b/jenkinsfile @@ -12,6 +12,7 @@ pipeline { SPRING_IMAGE_NAME = 'spring-jenkins' ANGULAR_IMAGE_NAME = 'angular-jenkins' IMAGE_TAG = 'latest' + COMPOSE_PROJECT = 'gameovergne-app' } stages { @@ -50,29 +51,20 @@ pipeline { } } - stage('Spring Deployment') { + stage('Deployment') { steps { sh ''' - # On supprime l’ancien conteneur backend s’il existe - docker rm -f gameovergne-api || true + echo "=== Nettoyage des anciens conteneurs du projet compose ===" + CONTAINERS=$(docker ps -a --filter "label=com.docker.compose.project=${COMPOSE_PROJECT}" -q || true) + if [ -n "$CONTAINERS" ]; then + echo "Suppression des conteneurs : $CONTAINERS" + docker rm -f $CONTAINERS + else + echo "Aucun conteneur existant pour le projet ${COMPOSE_PROJECT}" + fi - # On s’assure que MySQL est lancé - docker-compose up -d mysql - - # On recrée le conteneur Spring proprement - docker-compose up -d spring - ''' - } - } - - stage('Angular Deployment') { - steps { - sh ''' - # On supprime l’ancien conteneur frontend s’il existe - docker rm -f gameovergne-client || true - - # On recrée le conteneur Angular proprement - docker-compose up -d angular + echo "=== (Re)création de la stack MySQL + Spring + Angular ===" + docker-compose up -d mysql spring angular ''' } }