我需要执行jenkinsfile的不同行为,例如:
我是Jenkins文件的新手(groovy脚本),所以任何人都可以请我在哪里以及如何在Jenkins文件中应用条件。请给我一个条件相同的例子
Jenkinsfile :
pipeline{
agent any
stage('Checkout'){
checkout(scm)
}
stage('build'){
echo "build is success"
}
stage('deploy'){
echo " deployment successfully completed "
}
stage('email notify'){
emailext attachLog: true, body: 'job $job has been triggered', compressLog: true, subject: 'Email notification', to: 'mail id'
}
}
答案 0 :(得分:0)
您可以使用when
指令:https://jenkins.io/doc/book/pipeline/syntax/#when。
对诸如currentBuild.rawBuild.getCauses()[0].toString().contains('UserIdCause')
之类的东西进行补充,一个阶段将运行(无论您是否确定),如果该结果为true
这应该有效:
when {
expression { return currentBuild.rawBuild.getCauses()[0].toString().contains('UserIdCause') }
}
语法文件中还包含以下内容:
when {
triggeredBy "TimerTrigger"
}