pipeline { agent { docker { image 'golang:1.11' } } stages { stage('Prepare environment') { steps { script { sh 'make install-devtools' sh 'make vendor' } } } stage('Run unit tests') { steps { script { sh 'make test' } } } stage('Run lint') { steps { script { try { sh 'make LINT_ARGS="--new-from-rev=HEAD~" lint' } catch(ex) { currentBuild.result = "UNSTABLE" } } } } } post { always { script { if (currentBuild.currentResult != 'SUCCESS') { emailext ( subject: "${currentBuild.currentResult} - Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'", body: """ Voir les étapes du job: ${env.BUILD_URL}flowGraphTable Projet: ${env.GIT_URL} Branche: ${env.GIT_BRANCH} Commit: ${env.GIT_COMMIT} """, recipientProviders: [developers(), requestor()], ) } } } } }