通用的webhook触发器插件可基于文件和特定分支进行构建

时间:2018-10-15 12:12:57

标签: jenkins

我在Jenkins中有通用的webhook触发器插件。我必须基于在仓库中特定分支上更改的文件来构建。让我知道。 我使用Github和jenkins。

variable: changed_files Expression: $.commits[*]. 
['modified','added','removed'][*]
variable: ref Expression: $.ref

在选项过滤器中 我有这些

text: $ref $changed_files
Expression: (^refs/heads/develop)\s"local/test/[^"]+?"

结果:尽管Json具有适当的值,构建也不会触发。

在选项过滤器中 我有这些

text: $changed_files
Expression: "local/test/[^"]+?"

结果:无论分支机构如何,都会触发生成。

请让我知道如何配置选项过滤器表达式。 让我知道如何仅检出仓库中已发生提交的分支。我正在使用管道作业。

1 个答案:

答案 0 :(得分:2)

变量changed_files设置为$.commits[*].['modified','added','removed'][*]

变量ref设置为$.ref

text过滤为$ref $changed_files

expression过滤为refs/heads/develop .*"local/test/[^"]+?".*

这里有一个测试案例展示了此功能:https://github.com/jenkinsci/generic-webhook-trigger-plugin/blob/master/src/test/resources/org/jenkinsci/plugins/gwt/bdd/github/github-push-trigger-when-specific-file-changes-to-branch.feature