我们当前正在运行TeamCity Enterprise 2017.1.5 (build 47175)
,并正在尝试为构建建立以下步骤:
Step 1
Step 1
成功,则同时启动构建配置2A
,2B
和2C
2A
,2B
和2C
)成功,请启动构建配置Step 3
从本质上讲,我们正在尝试通过允许多个构建配置彼此并行运行来加快总体构建时间。只要2
成功,所有Step 1
的配置都可以独立运行,因此我们将它们全部设置为在Step 1
成功构建后触发。
但是,Step 3
本质上是部署构建配置。只有在所有先前的配置(Step1
,2A
,2B
,2C
)成功的情况下,该选项才可以运行。
是否可以在TeamCity中设置构建配置,以便我们可以完成上面概述的Step 3
的设置?我在下面做了一张小图来说明我们的愿望。
答案 0 :(得分:1)
只需使用Dependencies。
1)提取step 3
和step 1
作为其他构建配置。 (例如,假设build 3
和build 1
)
2)打开2A
,2B
,2C
的构建配置设置,转到依赖关系。
使用参数将工件依赖性添加到build 1
从同一链构建(这很重要!!)
打开build 3
的构建配置设置
将3 快照依赖项添加到2A
,2B
,2C
,作为上一步。
将3个工件依赖项添加到2A
,2B
,2C
,其参数与上一步一样从同一链构建
最后,您将获得结果。仅当某些配置已更改时,TC才会重建,否则将重复使用现有的配置。
查看我的配置依赖项
部署所有配置,重新部署Cassandra DB和2个内部版本。
Deploy 1
和Deploy 2
需要Cassandra结果和构建中的工件。因此,两个部署都需要Cassandra,但分别需要构建。
答案 1 :(得分:-1)
这应该是Team City中一个单独的构建步骤,Team City一次只能为构建或跑步者运行一个构建步骤。此2a,2b和2c应分别分为步骤2、3和4。 Team City不需要在跑步者内平行建设