我需要跳过某些包含“ HotFix”作为单词的分支。 Jenkins文件中是否可以包含以下内容?
post {
success {
withCredentials(some_details) {
script {
try {
if (!env.BRANCH_NAME.contains('HotFix')) {
}
else {
}
}
catch (err) {
echo err
}
}
}
}
}
答案 0 :(得分:2)
Jenkins声明性管道支持when
directive,可以根据预定义条件跳过某些阶段。考虑以下示例:
pipeline {
agent any
stages {
stage("A") {
steps {
// ....
}
}
stage("B") {
when {
expression {
!env.BRANCH_NAME.contains("HotFix")
}
}
steps {
// ....
}
}
}
}
在这种情况下,仅当当前分支名称不包含B
时,我们才想执行阶段HotFix
。