From 1d67074daa769e59a7c9c893a9f42ba4dbb13107 Mon Sep 17 00:00:00 2001 From: Maxime Pierront Date: Sun, 23 Nov 2025 00:19:06 +0100 Subject: [PATCH] Add Jenkinsfile for CI/CD pipeline setup, including build, test, package, and deployment stages. --- jenkinsfile | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 jenkinsfile diff --git a/jenkinsfile b/jenkinsfile new file mode 100644 index 0000000..8c37de4 --- /dev/null +++ b/jenkinsfile @@ -0,0 +1,38 @@ +pipeline { + agent any + stages { + stage('Compilation') { + steps { + echo "Compilation du projet..." + sh 'mvn clean compile' + } + } + stage('Tests') { + steps { + echo "Exécution des tests..." + sh 'mvn test' + } + post { + always { + // Publier les résultats de tests JUnit dans Jenkins + junit 'target/surefire-reports/*.xml' + } + } + } + stage('Packaging') { + steps { + echo "Packaging de l'application (sans exécuter les tests)..." + sh 'mvn package -DskipTests' + } + } + stage('Déploiement') { + steps { + echo "Démarrage de l'application Spring Boot..." + // Arr\u00eater l'application si elle tourne d\u00e9j\u00e0 (pour ne pas dupliquer les instances) + sh 'pkill -f "java -jar" || echo "Aucune ancienne instance \u00e0 arr\u00eater"' + // D\u00e9marrer la nouvelle version en arri\u00e8re-plan + sh 'nohup java -jar target/*.jar --server.port=8081 &' + } + } + } +} -- 2.52.0