Jenkins脚本化管道中的分支指定符正则表达式

假设我想为同一脚本管道下的不同分支定义管道,如何为某些分支模式定义正则表达式。例如说:

if(env.BRANCH_NAME ==~ /release.*/){

stage("Deploy"){

echo 'Deployed release to QA'

}

在这里,我想以这种方式为模式的任何分支定义该正则表达式

*release*

(表示其中包含释放字符串的任何分支)。如何实现?

以及类似的如何实现:-

如果分支除了开发之外,什么都不是,请掌握,发布(模式)。

回答:

如果您使用的是groovy,则可以使用以下内容

if ((env.BRANCH_NAME =~ '.*release.*').matches()) {

stage("Deploy"){

echo 'Deployed release to QA'

}

}

如果要匹配除或以外的任何分支名称develop,则可以使用以下正则表达式master``release

if ((env.BRANCH_NAME =~ '^((?!develop|master|release).)*$').matches()) {

stage("Deploy"){

echo 'Deployed release to QA'

}

}

以上是 Jenkins脚本化管道中的分支指定符正则表达式 的全部内容, 来源链接: utcz.com/qa/419172.html

回到顶部