如何防止跨多个Build Agent的每个构建配置的并行构建

时间:2011-02-20 23:14:21

标签: continuous-integration teamcity

我在TeamCity中有很多构建配置,每个配置都为大型项目提供服务。在过去,如果构建被启动,构建代理可能会忙碌最多20分钟!

为了提高吞吐量I installed a second Build Agent on the same machine,如果构建运行由构建代理1启动并且它忙了20分钟而另一个项目的某个人进行了更改,则构建代理2可以执行构建对于另一个项目,无需等待当前的构建运行完成。

一切顺利,直到两次连续签入导致两个Build Agents并行运行单个构建配置的构建。由于某些资源是共享的,因此IIS目录和数据库,我不希望单个构建配置同时在两个构建代理上运行。

如果当前正在针对不同构建代理的构建配置运行构建,我如何确保不会触发构建?

One way似乎涉及环境变量并确保Build Agent在构建配置兼容性方面进行50/50分割,但这看起来有点笨拙。

1 个答案:

答案 0 :(得分:27)

您可以“Limit the number of simultaneously running builds”进行构建配置(常规设置页面)。

将其设置为1,以完成您的任务。