Elm*_*lmo 7 jenkins gitlab jenkins-job-builder
我有以下Jenkins Job定义:
- 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
Run Code Online (Sandbox Code Playgroud)
现在这个工作可以上传到詹金斯没有错误,但如果我去Configure的页面some-project在詹金斯的Web UI,我可以看到,Build when a change is pushed to GitLab在触发器未启用部分.GitLab回购被正确配置- 源代码管理这项工作的部分有git@gitlab.****/some-project.git与some-ssh-username-with-private-key证书和分支origin/master配置.但没有工作触发器,这是没用的.
我究竟做错了什么?
请注意,我不是问如何配置GitLab WebHooks来触发Jenkins作业.我可以手动执行此操作并且工作正常.但是我们希望使用Jenkins Job构建器管理我们的Jenkins作业,以避免通过Web UI配置它们的错误过程并跟踪作业配置的变化 - 我们正在使用Jenkins作业定义创建git存储库.
我怀疑您可能需要将 放在triggers其本身中job,而不是放在/project/jobs.
通过按键下的触发器project,我遇到了与您相同的症状。我的触发器都没有在詹金斯中创建。将triggers部分移至 ajob可以解决我的问题。
此 yaml 将构建一个名为builder-test“当更改推送到 GitLab 时构建”复选框的 jenkins 作业:
- scm:
name: gitlab
scm:
- git:
url: https://gitlab.com/user/repo-name.git
branches:
- origin/master
- job:
name: builder-test
project-type: freestyle
description: "builder-test desc"
scm:
- gitlab
triggers:
- gitlab:
trigger-push: true
- project:
name: builder-test-project
jobs:
- 'builder-test'
Run Code Online (Sandbox Code Playgroud)
使用 GitLab 插件 1.5.1 和 JJB 1.6.2 在 Jenkins 2.32.3 上进行测试
| 归档时间: |
|
| 查看次数: |
517 次 |
| 最近记录: |