【发布时间】:2011-10-03 04:12:08
【问题描述】:
我们使用 Jenkins 在每次提交到 SCM 时对我们的项目进行增量构建。我们希望为每个提交获得单独的构建。然而,简单的方法(设置 SCM 并使用提交后挂钩来触发构建)在以下场景中会出现问题:
- 构建已触发。
- 在构建过程中(最多可能需要几分钟)两个由两个开发人员分别向 SCM 提交。
- 一个新构建被触发。它接收来自之前构建期间所做的两个提交的更改。
这种“竞争条件”使查找哪个提交破坏了构建/引入的警告变得复杂。
当前采用的解决方案是检查一项作业(“调度程序作业”)中的更改并触发另一项作业来进行实际的检查和构建。
这个问题有合适的解决办法吗?
【问题讨论】: