【发布时间】:2013-01-06 06:00:29
【问题描述】:
我不希望 Build Config A 和 Build Config B 同时运行。这是因为它们共享无法同时访问的相同资源。但是,每个构建配置都由单独的代理运行,因此它们可以同时运行。
相反,我希望一个构建配置在触发时等待另一个构建配置(如果它正在运行)完成。例如,如果 Build Config B 开始运行,但 Build Config A 已经在运行,则 B 将等待 A 完成,然后 B 将运行。
我不认为快照依赖会起作用,因为它假定一个配置依赖于另一个配置,这在我的情况下是不正确的。
【问题讨论】:
-
为什么不能独立运行?他们会通过共享资源相互干扰吗?你能把它们固定到同一个代理吗?
-
构建是否总是一起运行?如果是这样,您可以从其中一个构建中删除所有构建触发器,并为其分配一个完成构建解决方案。这将在构建 A 完成后对构建 B 进行排队。也就是说,我仍然喜欢 Matt 的建议,即强制他们在同一个构建代理上运行。
-
由于共享资源,它们无法独立运行。理想情况下,我会找到解决此问题的方法,但需要进行一些重新配置,因此我希望至少暂时阻止它们同时运行。
-
在这种情况下,只需在代理选项卡上制定一条规则,它们必须在包含 xxx 的代理名称上运行(无论是什么),然后这些构建只能在该代理上运行并且永远不会运行同时。
标签: teamcity teamcity-7.1