Teamcity代理需求参数

Teamcity代理需求参数,teamcity,Teamcity,我有一个TeamCity项目,有多个子项目。如何使子项目在特定代理上运行,而不需要预先在代理需求中对其进行硬编码?我想做点像 这样,我就可以只拥有一个项目,并在执行时在某些配置中指定一个代理名称,而不是为每个代理复制子项目。使用TeamCity 9。您可以创建代理池并为项目分配特定代理。要执行此操作,请单击顶部的“代理”链接 基本上,您可以定义特定项目的目标只应在特定代理上运行 编辑 如果您想在运行时定义它,您必须返回到在目标中定义代理需求。在第一个目标中为代理名称设置参数。在所有后续目标中,

我有一个TeamCity项目,有多个子项目。如何使子项目在特定代理上运行,而不需要预先在代理需求中对其进行硬编码?我想做点像


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

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

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

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

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


我会推荐第一个选项而不是第二个

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


谢谢你的建议。是否可以在“运行时”定义的特定代理上运行项目的所有目标?我想设置一个标志,然后说现在在agent1上运行项目,现在在Agent2上运行项目,等等。Jenkins通过一个“矩阵插件”来实现这一点,我不确定TeamCity是否有类似的功能,但我也在寻找一种方式来说“在每个代理上运行X配置”,但我想一次运行一个。