是否可以将TeamCity配置为在某些代理上运行个人构建?

时间:2013-01-21 14:02:12

标签: teamcity teamcity-7.1

我们有一个特定的构建配置,需要运行大量的个人构建而不会有长时间的延迟。是否可以将特定代理专用于运行个人构建?例如,如果我们有5个代理,是否可以让所有5个代理运行个人构建,但只有3个被VCS触发器触发?我能看到这样做的唯一方法是创建2个代理池。这种方法的问题在于您必须为每个池指定特定项目,这将涉及复制构建配置。

目前,个人构建在构建队列中配置了更高的优先级,但这无助于防止所有代理运行(慢速)集成测试时出现延迟。理想情况下,这些集成测试将排队,直到能够运行它们的3个构建代理中的一个是免费的。有许多变通方法可以帮助减少影响,最好知道实际上是否可以将代理专用于远程构建。

截至2013年1月,我们正在运行最新版本的TeamCity,即7.1.3。

1 个答案:

答案 0 :(得分:0)

您可以通过指定代理要求来实现此目的。选择一个参数,区分您想要由VCS自动触发的3个代理与其他2个代理。在每个构建配置中将其添加为代理需求,但要在所有5个代理上运行的配置除外。这样,您就可以将集成测试限制为3个代理,并释放剩余的2个代理,以便仅运行需要大量个人构建的配置。

此外,如果您使用构建配置模板,那么使用代理池的建议解决方案似乎并不太糟糕。