加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

TeamCity中快照依赖和完成构建触发器之间有什么区别?

发布时间:2020-12-14 00:51:41 所属栏目:百科 来源:网络整理
导读:在我看来,快照依赖的功能完全取代了TeamCity中完成构建触发器的功能.任何人都可以解释这些方法的效果,如果它们导致不同的链行为?例如,如果我有一个A- B的构建链 这三种设置之间的链条实际上是否有任何不同? 设置1:B中A的单个完成构建触发器. 设置2:B中A
在我看来,快照依赖的功能完全取代了TeamCity中完成构建触发器的功能.任何人都可以解释这些方法的效果,如果它们导致不同的链行为?例如,如果我有一个A-> B的构建链

这三种设置之间的链条实际上是否有任何不同?

>设置1:B中A的单个完成构建触发器.
>设置2:B中A的单个快照依赖性.
>设置3:B中定义的A和A快照依赖关系的完成构建触发器.

我知道有人可以将Snapshot Dependency视为所有dependees的“AND”操作,而Finished Build Trigger就像dependees中的“OR”操作一样.但在顺序链的背景下,有什么区别吗?

谢谢,
斯科特

“快照依赖”和“完成构建”触发器非常不同.一个基本上是“推”操作,而另一个是“拉”操作.

设置1:
如果我构建了配置A和B,其中B在A上有一个“完成构建”触发器,则相反的行为是正确的.触发B对A没有影响,但触发A将在B完成后有效触发.

设置2:
如果我具有完全相同的设置但是B对A具有快照依赖性,那么每当触发B时,A将首先运行,或者至少检查它是否需要运行,然后运行B.如果仅触发A,然后B不会被触发.

设置3:
设置3略有不同,因为它不依赖于“完成构建”触发器或快照依赖性.它还取决于初始触发器(VCS,预定或其他).例如,如果A上有VCS触发器,并且B在A上同时具有“完成构建”触发器和“快照依赖性”,那么您将有效地获得安装程序1的行为.将在VCS更改时触发,并且B将在A之后触发(使用相同的快照).实际上,如果没有快照设置,则无法保证B将使用与A相同的快照,这可能是您想要的也可能不是.

所以一般来说,当你想要一个“从左到右”的触发过程时,你可以使用BOTH完成的构建触发器和快照依赖关系来保证构建抵押品的神圣性.

另一方面,如果你在B上设置了初始触发器(VCS或预定或其他),那么“完成构建”触发器有点无效,因为B将始终首先触发(但不会运行),然后它将触发所有依赖项并在完成后自动运行.

希望有所帮助.谢谢!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读