如果发生另一个 scm 触发的构建,如何让 Jenkins 取消 scm 触发的构建?
我有一个项目大约需要 15 分钟才能在 jenkins 中运行其构建(phpunit 是构建中最长的元素)。
我已经配置了 scm 触发的构建(基于 svn),因此每次提交发生时,都会触发构建(使用提交后脚本)。
但是,如果在 jenkins 仍在构建项目时发生提交,则它将处于挂起状态,直到上一个构建完成为止。
由于一旦进行了新的提交,旧的构建就不再相关,如果同一个项目有新的构建待处理,如何让 jenkins 取消当前的构建?
I have a project that takes about 15 minutes to run its build in jenkins (phpunit is the longest element of the build).
I've configured scm-triggered builds (svn based), so everytime a commit happen, a build is triggered (using a post-commit script).
However, if a commit happens while jenkins is still building the project, it is pending until the previous build finishes.
Since the old build is not relevant once a new commit has been made, how can make jenkins cancel a current build if a new build is pending for the same project ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,为每个变更集构建项目也不错,如果构建失败你就会知道哪个变更集需要验证。
但如果您想将一些变更集合并到一个构建中,我建议在
高级项目选项
中设置安静期
以延迟构建。First of all, it is not bad to build project for each change set, if build failed you will know which change set requires verification.
But if you want to combine some changesets into one build I recommend to setup
Quiet period
inAdvanced Project Options
to delay builds.