50 lines
1.4 KiB
Groovy
50 lines
1.4 KiB
Groovy
pipeline {
|
|
agent any
|
|
tools {
|
|
maven 'maven-3.9'
|
|
}
|
|
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 {
|
|
sh '''
|
|
echo "PWD = $(pwd)"
|
|
echo "Content of target/:"
|
|
ls -lh target || echo "No target directory"
|
|
|
|
echo "Which java?"
|
|
which java || echo "java NOT in PATH"
|
|
java -version || echo "java command failed"
|
|
|
|
echo "Trying to start app..."
|
|
nohup java -jar target/*.jar --server.port=8081 > app.log 2>&1 &
|
|
echo "PID started: $!"
|
|
'''
|
|
}
|
|
}
|
|
}
|
|
}
|