在執(zhí)行以下流水線時余境,報錯java.lang.NullPointerException: Cannot invoke method timeout() on null object
演训。
node('openjdk8') {
def sonar_home = tool name: 'sonar-scanner-4.6.2'
withEnv(["PATH+bin=${sonar_home}/bin:/usr/local/bin:/usr/bin:/bin"]) {
stage('代碼審查'){
withSonarQubeEnv('sonarqube-8.9.6') {
sh "sonar-scanner -Dsonar.projectKey=myproject -Dsonar.host.url=http://192.168.116.128:9000/"
}
}
stage('閾值判斷') {
ansiColor('vga'){
echo "閾值判斷"
} timeout(30) { waitForQualityGate abortPipeline: true }
}
}
}
參考https://stackoverflow.com/questions/50186137/jenkins-pipeline-cannot-invoke-method-stage-on-null-object据某,需要修改流水線腳本实辑,將timeout()另起一行:
node('openjdk8') {
def sonar_home = tool name: 'sonar-scanner-4.6.2'
withEnv(["PATH+bin=${sonar_home}/bin:/usr/local/bin:/usr/bin:/bin"]) {
stage('代碼審查'){
withSonarQubeEnv('sonarqube-8.9.6') {
sh "sonar-scanner -Dsonar.projectKey=myproject -Dsonar.host.url=http://192.168.116.128:9000/"
}
}
stage('閾值判斷') {
ansiColor('vga'){
echo "閾值判斷"
}
timeout(30) { waitForQualityGate abortPipeline: true }
}
}
}