use*_*090 5 jenkins gitlab multibranch-pipeline
我想为每次推送触发多分支管道,任何人都可以告诉我如何在 gitlab 中为多分支管道配置 web-hooks。
如果您想知道触发器设置在多分支管道作业设置中的位置,这将回答它:
与其他作业类型不同,多分支作业配置不需要“触发器”设置;只需在 GitLab 中为推送请求创建一个指向项目 Webhook URL 的 Webhook 即可。
来源: https: //github.com/jenkinsci/gitlab-plugin#webhook-url
您还可以在 Jenkinsfile 中提供 Gitlab 触发器。您可以在上面提供的链接中查看示例。这就是我让它工作的方式:
pipeline {
agent {
node {
...
}
}
options {
gitLabConnection('GitLab')
}
triggers {
gitlab(
triggerOnPush: true,
triggerOnMergeRequest: true,
branchFilterType: 'All',
addVoteOnMergeRequest: true)
}
stages {
...
}
}
Run Code Online (Sandbox Code Playgroud)
然后在您的 Gitlab 项目中转到“设置”->“集成”并在“URL”中输入 Jenkins 作业项目 url。URL 应采用以下任一形式:
请注意,该 url 中不包含“job”,而是使用“project”。
如果您希望每当有人推送提交时就触发作业,请确保在“触发器”下也选中“推送事件”。
最后,在测试 Webhook 之前,首先针对 Jenkinsfile 运行构建,以便 Jenkins 获取 Gitlab 的触发器设置。