这是我遇到的问题 - 我需要每2小时触发一次作业构建,但前提是有一个git提交(如果没有活动则跳过).我可以单独解决它们但不确定如何一起解决它们 - 任何人都有任何好的想法?我能想出的唯一一个是每两个小时检查一次的cron作业,如果在那段时间内有一个git提交,则手动触发一个作业,但这看起来并不那么优雅.
任何好的想法都赞赏.
Ang*_*ese 17
将jenkins设置为每2小时使用"Poll SCM"触发器(0*/2***)或类似的东西
它将从git更新,如果有更改,则触发构建.
如果您只使用cron表达式HH/2***设置Poll Scm,它将每2小时触发一次构建,但是如果发生git提交并且还不是2小时,也会触发构建.
如果在Poll SCM中选中"忽略提交后挂钩"选项以及上面的cron表达式,这将忽略SCM提交后挂钩通知的更改,现在只有在提交时才会触发构建并且它已经是2小时.
通过此步骤,您可以完全避免任何手动干预来触发构建.
此选项的帮助图标清楚地说明了其功能,
如果您希望阻止某些长时间运行的作业(例如报告)因每次提交而启动,但仍希望在SCM更改发生时定期运行它们,这将非常有用.
请注意,SCM插件也需要支持此选项!自版本1.44以来,subversion-plugin支持此功能.
我有GIT 2.4.0并且使用此选项正常工作.