在Jenkins/Hudson中为一个提交强制执行一个构建

Ole*_*leg 25 hudson jenkins

我们使用Jenkins在每次提交SCM时对项目进行增量构建.我们希望为每个提交获得单独的构建.但是,在以下场景中,天真的方法(设置SCM并使用提交后挂钩来触发构建)会出现问题:

  • 构建被触发.
  • 在进行构建时(可能需要几分钟),两个开发人员会对SCM进行两次单独的提交.
  • 触发了一个新构建.它接收在上一次构建期间进行的两次提交的更改.

这种"竞争条件"使找到哪一个提交已经破坏了构建/引入的警告变得复杂.

当前使用的解决方案是检查一个作业的变化("调度程序作业")并触发另一个作业来进行实际的结算和构建.

这个问题有适当的解决方案吗?

Dan*_*iel 7

还没有,有一个功能请求涵盖了这种构建,但它仍然是开放的:问题673


Dan*_*tik 1

我认为可能有帮助的是将静默期(Jenkins > 管理 Jenkins > 配置系统)0和 SCM 轮询设置为非常短的时间。但即使在这么短的时间间隔内也可能有两次提交。截至目前,Jenkins 尚不具备在多个 SVN 提交上将构建拆分为单个构建的功能。

这是有关该主题的教程:安静期功能