git - 分支正则表达式不起作用时的 Jenkinsfile 阶段

标签 git jenkins

我有一个声明性 jenkinsfile 设置,以及当分支具有特定命名约定时我需要运行的阶段之一。由于某种原因,该阶段未在添加了 when block 的情况下运行,如下所示:

when {
  branch pattern: '^([0-9]{5}-)?(?i)external-resources-.*',
  comparator: 'REGEXP'
}

因此,在上面的示例中,我希望当分支与其中包含名称 external-resources 的任何内容匹配时运行该阶段。所有其他分支都应被忽略。

感谢您提供的任何帮助。

最佳答案

您可以首先在 regex101.com 中测试您的正则表达式:在中间添加 (?i) 是行不通的。

如“Grails/Groovy regular expression- how to use (?i) to make everything case insensitive?”中所述,您需要将其放在开头。

(?i)^([0-9]{5}-)?external-resources-.*

关于git - 分支正则表达式不起作用时的 Jenkinsfile 阶段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60839128/

相关文章:

git - bash - 引号中的变量

git - 将所有 Git 分支导出到每个分支的单独 zip 文件中

Github:重置为之前的提交

jenkins - 定制Jenkins的 "Build Executor Status"

Jenkinsfile 管道错误 : “expected a step” and “undefined section”

.net - 如何在 Jenkins 上为 .net 项目设置构建/部署

git - 推送到从 KIE Workbench 存储库克隆的 git 存储库

windows - Git 钩子(Hook)没有触发

Jenkins sshagent 执行不工作

git - 如何在 github 组织 Jenkins 工作流中 check out ssh 远程并在 Jenkinsfile 中使用 ssh 凭据