in vars/asfStandardBuild.groovy [24:106]
def call(Map params = [:]) {
// Faster build and reduces IO needs
properties([
disableConcurrentBuilds(),
durabilityHint('PERFORMANCE_OPTIMIZED'),
buildDiscarder(logRotator(numToKeepStr: '5', artifactNumToKeepStr: '3'))
])
// now determine params
def jdk = 'jdk_15_latest'
if (env.TAG_NAME=="release-1.7") {
jdk = 'jdk_11_latest'
}
// use the cmdLine parameter otherwise default depending on current branch
def cmdline = params.containsKey('cmdline') ? params.cmdline : (env.BRANCH_NAME == 'master'?"clean deploy site:site site:stage":"clean install")
def mvnName = params.containsKey('mvnName') ? params.mvnName : 'maven_3_latest'
def xvfb = params.containsKey('xvfb') ? true : false
def defaultPublishers = [artifactsPublisher(disabled: false), junitPublisher(ignoreAttachments: false, disabled: false),
findbugsPublisher(disabled: true), openTasksPublisher(disabled: true),
dependenciesFingerprintPublisher(disabled: false), invokerPublisher(disabled: true),
pipelineGraphPublisher(disabled: false), mavenLinkerPublisher(disabled: false)]
def publishers = params.containsKey('publishers') ? params.publishers : defaultPublishers
pipeline {
agent any
triggers {
pollSCM('H/5 * * * * ')
}
stages{
stage("Build with xvfb") {
agent { node { label 'ubuntu && !nocredentials' } }
options { timeout(time: 120, unit: 'MINUTES') }
when {expression {
return xvfb
}
}
steps{
wrap([$class: 'Xvfb', additionalOptions: '', assignedLabels: '', displayNameOffset: 0, installationName: 'Xvfb', parallelBuild: true, screen: '']) {
mavenBuild( jdk, cmdline, mvnName, publishers)
}
}
}
stage("Build") {
agent { node { label 'ubuntu && !nocredentials' } }
options { timeout(time: 120, unit: 'MINUTES') }
when {expression {
return !xvfb
}
}
steps{
mavenBuild( jdk, cmdline, mvnName, publishers)
}
}
}
post {
always {
cleanWs() // deleteDirs: true, notFailBuild: true, patterns: [[pattern: '**/.repository/**', type: 'INCLUDE']]
}
unstable {
script{
notifyBuild( "Unstable Build ")
}
}
failure {
script{
notifyBuild( "Error in build ")
}
}
success {
script {
def previousResult = currentBuild.previousBuild?.result
if (previousResult && !currentBuild.resultIsWorseOrEqualTo( previousResult ) ) {
notifyBuild( "Fixed" )
}
}
}
}
}
}