如果发生另一个 scm 触发的构建,如何让 Jenkins 取消 scm 触发的构建?

发布于 2024-12-26 17:25:22 字数 242 浏览 1 评论 0原文

我有一个项目大约需要 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

噩梦成真你也成魔 2025-01-02 17:25:22

首先,为每个变更集构建项目也不错,如果构建失败你就会知道哪个变更集需要验证。

但如果您想将一些变更集合并到一个构建中,我建议在高级项目选项中设置安静期以延迟构建。

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 in Advanced Project Options to delay builds.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文