我正在将 Jenkins 与 Github 拉取请求构建器插件一起使用
https://wiki.jenkins.io/display/JENKINS/GitHub+pull+request+builder+plugin
在 PR 打开或更新时触发构建很好,但我需要一种在 PR 关闭或合并时触发的方法。
我使用 Terraform 启动一堆服务器,所以我需要事件或条件在 PR 关闭/合并后终止堆栈。
似乎大多数插件只能由 Github PR 上的打开/更新事件触发。
任何的想法?
谢谢!
最佳答案
您可以通过两种方法做到这一点:
1)通过网络钩子(Hook)。这要求您的 jenkins 有一个公共(public)端点或一些公共(public)端点(可能是代理),github 可以通过这些端点向您的 jenkins 发布信息。
https://wiki.jenkins.io/display/JENKINS/GitHub+Plugin#GitHubPlugin-ManualMode
2) 如果公共(public)端点不可用,则每分钟轮询一次 repo 作为解决方法。
http://www.andyfrench.info/2015/03/automatically-triggering-jenkins-build.html
请注意,在更大的设置中,轮询可能会对性能产生一些影响。 (我多年来一直在使用它,在较小的设置中没有任何问题)。
https://blogs.microsoft.co.il/leonj/2017/01/24/jenkins-poll-scm-the-nightmare-for-performance/
关于github - Jenkins - 当 Github PR 关闭或合并时触发构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46707220/