Jenkins Gitlab插件,在合并请求或主分支上执行管道

huwehgph  于 12个月前  发布在  Jenkins
关注(0)|答案(1)|浏览(113)

我试图让我的Jenkins多分支管道被Gitlab触发:

  • 主分支上的推
  • 任何打开的合并请求

Gitlab plugin Jenkins doc
Webhook工作得很好,管道也能很好地执行。问题是它们会在每次提交时执行。文档中的triggers部分没有明确说明我应该如何在声明式管道中实现这一点。

gitlab(triggerOnPush: true, triggerOnMergeRequest: true, branchFilterType: 'NameBasedFilter', branchFilterName: 'master')

字符串
Jenkins不接受重复的gitlab触发器。我想使用QuererOnPush,但只针对处于打开合并请求中的分支。我还想使用QuerOnPush,以确保master分支中的每个提交都是QuerOnPush。
我也试过在when条件块中使用changeRequest(),但它也不起作用。
任何帮助请?

e37o9pze

e37o9pze1#

要始终仅在master中为每个提交触发构建,请在“自动分支项目触发”下,将“要自动构建的分支名称”设置为master,并将“抑制策略”设置为“不抑制任何内容”。
对于第二个需求,Projects > Repository Sources > Behaviors > Discover branches将策略设置为“Only branches that also filed as PR”,这将只构建与合并请求相关的分支。

相关问题