按计划运行 GoCD 流水线
要在指定时间运行流水线,请使用计时器。计时器理解类似于 cron 的规格来指定何时运行流水线。
注意,如果有变更被提交,则流水线仍会正常调度。如果流水线仅应按照计时器的时间表运行,则还应该为流水线的第一阶段设置手动审批,以防止材料变更时自动调度。这也可以通过取消选中下方截图中显示的“自动流水线调度”选项来实现。
计时器在许多方面与手动触发的流水线相似。但它在运行时不会获取材料的最新版本。它使用其已知的最后一个可用版本。
通过用户界面配置
要在用户界面中配置计时器,请导航到流水线的常规选项部分。例如,按截图所示配置的计时器将在工作日的晚上 10 点运行该流水线。此表单中还有一个名为“仅在新材料上运行”的选项。选择此选项可确保仅在材料自上次运行以来发生变更时,流水线才会按指定的时间表触发。例如,如果没有新的提交自上次运行以来,未来的运行将被跳过,直到有新的提交或者流水线被强制运行(使用 trigger-with-options)使用较旧的提交。当“自动流水线调度”关闭时,此选项通常非常有用。
通过 XML 配置
以下 XML 配置对应于上述 UI 示例。
<pipeline name="nightly">
<timer onlyOnChanges="true">0 0 22 ? * MON-FRI</timer>
<materials>
...
</materials>
<stages>
<stage name="compile">
<approval type="manual"/>
...
</stage>
</stages>
</pipeline>
更多信息请参阅< timer >