我有许多链接在一起的构建配置。
A
B
C D E
每个构建都对链中的先前配置具有快照依赖性,这意味着构建B依赖于A并且构建C,D和E依赖于B.
每个配置都有一个触发器,用于在链中的先前构建成功完成时设置。此设置的问题是运行个人构建以测试远程更改。如果B正在运行远程更改到A的队列中,则个人构建将首先运行A(个人构建),C,D和E将添加队列。这是一个问题的原因是C,D和E是针对在步骤A和B中部署的代码运行的测试。这意味着在运行测试之前,代码可以通过个人更改进行有效的重新部署。
有两种方法可以解决这个问题
我无法看到如何实现这些选项中的任何一个。快照依赖项当前设置为“如果有合适的版本,请不要运行新版本”,但是如果我更改了它,则无法在不经过整个链的情况下重新运行失败的测试。
这是一种配置TeamCity的糟糕方式吗?如果是这样,构建链接的更好方法是什么?
答案 0 :(得分:0)
我通过在这个问题中实施了接受的答案解决了这个问题:
Is it possible to prevent a build chain from being interrupted in TeamCity?
此解决方案实现了上面的选项1。通过使用包含当前部署值的文本文件,如果依赖项已过期,则可以通过HTTP取消/重新触发构建。