我有以下 Jenkins 工作定义:
- scm:
name: some-project
scm:
- git:
url: git@gitlab.****/some-project.git
credentials-id: some-ssh-username-with-private-key
branches:
- origin/master
- project:
name: some-project
jobs:
- '{name}':
triggers:
gitlab:
trigger-push: true
trigger-merge-request: false
trigger-open-merge-request-push: never
现在这项工作可以毫无错误地上传到 Jenkins,但是如果我转到Jenkins Web UI中的Configure
页面some-project
,我可以看到触发器部分未启用。GitLab repo 已正确配置 -此作业的源代码管理部分已配置凭据和分支。但是如果没有工作触发器,这是没有用的。Build when a change is pushed to GitLab
git@gitlab.****/some-project.git
some-ssh-username-with-private-key
origin/master
我究竟做错了什么?
请注意,我不是在问如何配置 GitLab WebHooks 来触发 Jenkins 作业。我可以手动执行此操作,并且效果很好。但是我们希望使用 Jenkins Job builder 管理我们的 Jenkins 作业,以避免通过 Web UI 配置它们的过程容易出错,并跟踪作业配置的变化——我们正在使用 Jenkins 作业定义创建 git 存储库。