def MAVEN_IMAGE = 'maven:3.8.2-openjdk-11-slim' pipeline { agent any environment { BRANCH_NAME = env.GIT_BRANCH.replace('origin/', '') } stages { stage('Build') { agent { docker { image "${MAVEN_IMAGE}" } } steps { git 'https://github.com/mabayhan/sonarqubejava' sh 'mvn -Dmaven.test.failure.ignore=true clean package' } post { success { junit '**/target/surefire-reports/TEST-*.xml' archiveArtifacts 'tests/target/*.jar' } } } stage('Static Code Analysis') { // maven:start agent { docker { image "${MAVEN_IMAGE}" } } steps { withSonarQubeEnv('cicd') { echo '################# MAVEN ###################' sh 'mvn sonar:sonar' echo '############### MAVEN END #################' } } // maven:end } stage('Pact'){ sh 'mvn pact:publish -Dpact.consumer.version=${GIT_COMMIT} -Dpact.tag=${BRANCH_NAME}' } } }