TeamCity防止同时进行分支构建

时间:2014-02-13 17:22:10

标签: git teamcity

我有一个典型的主人的Git设置 - >开发 - >特征结构。我有5个TeamCity(v8.1)构建代理。是否可以配置TeamCity,以便如果多个人同时承诺开发,那么开发分支将不会运行并发构建?我们的CI流程的一部分是成功部署,因此我不希望两个版本同时部署到同一个端点。

(我希望所有分支的设置,而不仅仅是开发)

3 个答案:

答案 0 :(得分:13)

在“常规设置”配置页面上,您可以将同时构建的数量设置为1而不是0表示无限制。这意味着它排队说5个版本,但一次只运行1个。

答案 1 :(得分:7)

您是否正在尝试阻止同一分支的多次签入为该分支生成多个构建?您可以通过设置构建配置的VCS触发器部分上的某些选项来更改并发设置,从而实现此目的。有一个' Quiet Period' 设置在进行构建之前等待X秒,以防万一同时进入多个提交。

以下是 TeamCity 8.x 中相关菜单的屏幕截图:

Screenshot of the TeamCity menu for configuration the quiet period on a build configuration.

编辑:另一种选择是构建功能 - > 共享资源功能。这允许您创建锁,将其与一个或多个项目相关联,并让它们使用它。这对于防止1+项目同时构建非常有用。这比安静的时间功能更可靠,因为有一个实际的锁定而不仅仅是一个延迟,虽然安静的时间确实有助于收集多个近乎同时的签到,因此是独立有用的。

答案 2 :(得分:1)

结合一段足够长的安静时间,但不要太长时间:),同时建立1个最大值,你应该能够得到你想要的东西。 它是我们在这里使用的,从120到180秒的安静时间,它运作良好。