pipeline { agent none stages { stage('Linux Build & Test') { environment { JAVA_HOME = '/usr/lib/jvm/java-11-openjdk-amd64' } agent { label 'p4java' } stages { stage('Compile') { steps { sh './gradlew clean assemble' } } stage('Build and Test') { steps { sh './gradlew clean build' } } } post { always { publishHTML target: [ allowMissing: false, alwaysLinkToLastBuild: true, keepAll: true, reportDir: 'build/reports/tests/test', reportFiles: 'index.html', reportName: 'LinuxTestReport' ] publishHTML target: [ allowMissing: false, alwaysLinkToLastBuild: true, keepAll: true, reportDir: 'build/jacocoHtml', reportFiles: 'index.html', reportName: 'CodeCoverageReport' ] sourceFileResolver: sourceFiles('STORE_LAST_BUILD') } success { archiveArtifacts artifacts: 'build/libs/p4.hpi', fingerprint: true } } } stage('Windows Build & Test') { environment { JAVA_HOME = "C:\\Program Files\\Java\\jdk-11.0.16.1" } agent { label 'p4java-win' } stages { stage('Compile') { steps { bat label: '', script: 'gradlew clean assemble' } } stage('Build and Test') { steps { bat label: '', script: 'gradlew clean build' } } } post { always { publishHTML target: [ allowMissing: false, alwaysLinkToLastBuild: true, keepAll: true, reportDir: 'build/reports/tests/test', reportFiles: 'index.html', reportName: 'WindowsTestReport' ] sourceFileResolver: sourceFiles('STORE_LAST_BUILD') } } } stage('Launch system tests') { steps { build job: 'jenkins-system-tests/main', wait: false } } } }