Jenkins - 基于推送的多分支管道

Jenkins - Multibranch pipeline build on push

我正在尝试在 Jenkins 中设置一个多分支管道项目。理想情况下,我希望在开发人员推送新代码后构建分支管道。例如,如果开发人员推送到 'dev' 分支,那么 'dev' 管道将自动构建。

我知道在 "Scan Multibranch Pipeline Triggers" 选项下您可以设置 Jenkins 查找更改的频率,但我更希望它是相反的,这意味着一旦新代码在分支中,Jenkins将构建管道。

我配置了我的 Jenkinsfile 并在我的 GitHub 项目中设置了网络挂钩,但我不知道我想做的事情是否可以完成,或者我是否缺少插件或配置。此外,Jenkins 目前 运行 作为 Kubernetes pod。

您必须在 Jenkins 上安装 Github Branch Source Plugin 并为您的 GitHub webhook 配置 URL 到 <JENKINS_URL>/github-webhook/

您可以从 cloudbees 查看 this support documentation 以获取逐步配置帮助。

我看到了问题,对于多分支管道项目,源必须是 GitHub 而不是 Git。使用所需的事件配置 web-hook,手动构建项目一次,然后进行测试推送,它应该可以工作。

我在这个 post 中分享了一个 guide/tutorial,它是关于 Gitlab 和 Jenkins 的,但有一些类似的部分可能会对您有所帮助。