Teamcity代理需求参数

时间:2015-03-05 09:13:03

标签: teamcity

我有一个包含多个子项目的TeamCity项目。如何让子项目在特定代理上运行而不在代理需求中预先对其进行硬编码?我想做点什么......

Team City Agent Requirement

这样,我可以只有一个项目,而不是复制每个代理的子项目,并在某些配置中指定执行时的代理名称。使用TeamCity 9。

2 个答案:

答案 0 :(得分:2)

您可以创建代理池并将特定代理分配给项目。要执行此操作,请单击顶部的“代理”链接。

基本上,您可以定义特定项目的目标应仅在特定代理上运行。

修改 如果要在运行时定义它,则必须返回到定义目标中的代理程序要求。您在第一个目标中为代理名称设置了一个paremeter。在所有后续目标中,您可以创建构建链并将参数从一个目标传递到另一个目标。在目标的定义中,您设置一个代理条件,说明代理名称与您在自定义变量中传递的任何值匹配。在第一个目标中,您可以有一个提示/下拉列表,并且可以为完整的构建链初始化基于代理的运行。

或者,您可以在每次运行之前从项目池中分配和取消分配代理,然后运行目标。对于代理程序池中的ex,您可以将项目A设置为仅在代理程序1上构建。运行完成后,您将项目A更改为仅在target2上运行。

我会推荐第二个

的第一个选项

答案 1 :(得分:0)

这个插件可能会做你想要的。您可以为同一参数定义一系列不同的值,它们将在所有参数中运行。这可能是代理名称或环境变量或node.js版本或其他。

https://github.com/presidentio/teamcity-matrix-build-plugin