我有一个问题的建设计划,在一个建设链,真的困扰我。
我有一个简单的构建链A -> B
我想避免运行B,除非需要--即,如果对B的任何输入发生了变化--但是我如何做到这一点?
如果检测到结果没有变化,我可以失败/取消A,但这将导致B的“快照依赖故障”,所以如果B的任何其他输入源确实更改,它将不会重建结果.
是否有任何方法来停止或中止A的生成,这样B的生成就不会被触发?
编辑:我(可能)有一个想法:我可以让A检查在SCM中产生的工件--如果它不同于以前的版本--并让它驱动B的触发器--B已经在SCM中有许多其他来源。据我所见,它不会是同一个构建链的一部分,但它是第二个最好的东西.
发布于 2015-09-29 16:29:34
我不这样认为。TeamCity中的构建链是静态的。
有两种可能的解决办法
我认为您最好在A内处理这个问题,所以#2不是一种选择。第一步接近了,当然,它更多的是涉及。
发布于 2015-09-29 17:46:03
我想它应该跳过A重建,并使用最近的一个,如果新的潜在的A的建设将是相同的一些最近的。例如,请求具有相同VCS修订版和相同设置的依赖构建A不应该再次触发生成。
https://stackoverflow.com/questions/32846765
复制相似问题