博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TeamCity : 自动触发 Build
阅读量:6340 次
发布时间:2019-06-22

本文共 1313 字,大约阅读时间需要 4 分钟。

创建了 build 的配置以后,您既可以手动点击 "Run" 按钮来触发一次 build 过程,也可以通过 Triggers 配置实现自动触发 build 过程。一个 trigger 就是一条规则:当某个事件发生时开始一次 build。TeamCity 内置支持多种触发器类型:

对于同一个 build,我们可以应用多个触发器,它们会按照各自的逻辑独立的起作用。下面我们比较详细的看下各类触发器的用法。

VCS 触发器

VCS 触发器在检测到代码变化后会自动触发 build 过程。TeamCity 会根据您设置的时间间隔去检测代码的变化。如果这段时间中有多个 checkin,仅触发一次 build。

需要注意的是当一个 build 配置有多个 VCS root 时,并不会为每个 VCS root 的变化触发 build,而是在检测过所有的 VCS root 后才决定是否触发一次 build。

您还可以设置每个 checkin 都触发一次 build。这需要选择"Trigger a build on each check-in"。如果您希望同一个提交者的多次提交只触发一次 build,请把"Include seral check-ins in a build if they are from the same committer"也选上。

静默期(Quiet Period)是个比较有趣的概念。设置后便不会在连续的几次 checkin 过程中触发 build (这几次连续的checkin是一个完整的过程)。通俗点讲,当检测到最后一次变更后的一段时间(默认一分钟)内没有发现新的变更才触发一次 build。

VCS 触发器中还有个好玩的东西叫"VCS Trigger Rules"。通过规则的设定,你可以告诉 TeamCity 是否满足触发 build 的条件:

Schedule 触发器

当我们要定时触发 build 时就需要用到 Schedule 触发器。

简单的使用方式就是在 Date and Time 区域选择合适的时间配置就可以了。此外 TeamCity 还支持 cron 格式的时间设置:

这为我们提供了更多的灵活性。

Finish Build 触发器

如果 build 之间有一定的依赖关系,比如后面的 build 依赖前一个 build 的产物,那么就需要在前一个 build 完成时触发下一个 build。Finish build 触发器可以完美的完成这个任务:

只需要选择合适的 build configuration 就可以了。我们还可以根据前一个 build 是否成功来决定是否来触发下一个 build:

Branch Remote Run 触发器

当我们希望在 TeamCity 上 build 某个个人分支时就需要通过某个分支上的变更来触发 build。Branch Remote Run 触发器可以实现这样的功能:

我们可以指定某个用户的分支。注意,这种触发器目前只支持 git 和 mercurial。

TeamCity 还支持一些其他类型的触发器,我们在用到时会进行详细的介绍。

转载地址:http://lohoa.baihongyu.com/

你可能感兴趣的文章
Eclipes批量创建文件夹
查看>>
矩阵的最小路径和二维动态规划的空间压缩
查看>>
爽肤水
查看>>
Pycharm下tensorflow导入错误
查看>>
装饰器和单例模式
查看>>
LINUX7安装Oracle11g单实例小结
查看>>
webStorage
查看>>
Linux_FTP服务
查看>>
iOS开发之SceneKit框架--SCNAction.h
查看>>
iOS开发之SceneKit框架--加载多个模型.dae/.scn文件
查看>>
iOS中block的探究
查看>>
Linux程序编写shell script的格式
查看>>
kali 执行apt-get upgrade后,终端无法打开的解决办法
查看>>
减低页面加载时间的方法
查看>>
BZOJ 2115: [Wc2011] Xor
查看>>
3054 高精度练习-文件操作
查看>>
[转]POI大数据量Excel解决方案
查看>>
python 启航
查看>>
5. RAMN备份与恢复
查看>>
(转)android:gravity和android:layout_gravity区别
查看>>