所以我有几个项目(A、B、C、D),其中的依赖项如下所示:
B
/ \
A D
\ /
C
也就是说,B 和 C 依赖于来自 A 的工件,而 D 依赖于来自 B 和 C 的工件。
我想做几件事:
- 以前成功构建的工件用于项目中。例如,当项目 C 的构建被触发时,它使用项目 A 的工件,这些工件先前已被验证为良好(也就是测试通过)。
- 项目中触发的构建也会触发依赖它们的项目中的构建。例如,如果在 B 项目中进行了更改,则构建 B 项目,然后使用刚构建的 B 项目中的工件构建 D 项目。项目 A 中的更改会按照 A、B 和 C(并发)的顺序重建所有内容,然后是 D。
我可以在“构建触发器”部分实现 VCS 触发构建。
我可以通过从“上次成功构建”中添加工件依赖项并拉出我的工件来在“依赖项”部分中实现工件依赖项。
我不知道如何在正确的依赖链中以正确的顺序实现触发构建。如果我将项目 A 设置为项目 B 的快照依赖项,当需要构建 B 时,它会重新构建 A,然后重新构建 B。同样,如果 A 发生更改,则仅重新构建 A。我希望 A 中的更改导致我所有项目的重建。
这可能吗?我在 TeamCity 7.1.3 上。