1

我设置了多个 VCS 根(Core、AuthN、Other)。由于横切代码失控,我们在构建Other时,需要下载Core和AuthN,以便构建集成测试的测试数据库。我遇到的问题是,我们将在任何时候拥有多达 3 个不同的每个活动分支:当前、补丁、修补程序。当Other 构建时,另外2 个正确的分支也需要下来,(例如,如果Other 的Hotfix 分支构建,则需要拉取Core 和AuthN 的Hotfix 分支)。由于这些特定的内部版本号会定期更改,因此我不确定如何让 Other 确定它需要哪个分支。

我设置了 3 个 VCS 根(一个用于 Other、Core 和 AuthN)的 Other,每个根都有自己的 branchName 参数作为默认分支。我还创建了一系列参数,用于确定下一个版本的当前补丁和修补程序版本。然后,我创建了一个 PS 脚本,它使用这些值以及当前分支名称(其他版本)来设置 Core 和 AuthN 分支名称,但是该构建步骤直到 VCS 下载完成后才会运行。如何为给定版本的 Other 获取正确版本的 Core 和 AuthN

4

1 回答 1

1

如果不同存储库中的分支具有相同的名称,您可能可以使用不同构建配置之间的TeamCity功能分支快照依赖关系。

因此,如果构建链触发了一个存储库中特定分支的更改,那么 TeamCity 将尽最大努力触发链其余部分中相应分支的构建。

看截图: 例子

如果 Step1 构建配置 (#8) 的 'hotfix' 分支发生变化,则在 Step2 中构建相应的分支。但是,如果仅存在于 Step2 中的“alternative”分支发生了变化,则 Step1 将从默认分支构建,在此示例中为“master”(#10)。

于 2018-04-30T20:25:39.973 回答