@Library('eo-jenkins-lib@master') import eo.Utils pipeline { agent any options { disableConcurrentBuilds() } stages { stage('Unit Tests') { steps { sh 'tox -rv' } post { always { script { utils = new Utils() utils.publish_coverage('coverage-*.xml') utils.publish_coverage_native( 'index.html', 'htmlcov-py3-coverage-authentic', 'Coverage authentic tests') utils.publish_coverage_native( 'index.html', 'htmlcov-py3-coverage-hobo', 'Coverage hobo tests') utils.publish_coverage_native( 'index.html', 'htmlcov-py3-coverage-multipublik', 'Coverage multipublik tests') utils.publish_coverage_native( 'index.html', 'htmlcov-py3-coverage-multitenant', 'Coverage multitenant tests') utils.publish_coverage_native( 'index.html', 'htmlcov-py3-coverage-passerelle', 'Coverage passerelle tests') utils.publish_pylint('pylint.out') } mergeJunitResults() } } } stage('Packaging') { steps { script { if (env.JOB_NAME == 'hobo' && env.GIT_BRANCH == 'origin/master') { sh 'sudo -H -u eobuilder /usr/local/bin/eobuilder hobo' } else if (env.GIT_BRANCH.startsWith('hotfix/')) { sh "sudo -H -u eobuilder /usr/local/bin/eobuilder --branch ${env.GIT_BRANCH} --hotfix hobo" } } } } } post { always { script { utils = new Utils() utils.mail_notify(currentBuild, env, 'admin+jenkins-hobo@entrouvert.com') } } success { cleanWs() } } }