一尘不染

我可以限制民意调查SCM作业每天仅运行一次吗?

jenkins

我有一个民意调查SCM工作,该工作每5分钟轮询一次Perforce的变化。但是我只需要在一天中对perforce中的文件进行第一次编辑时才触发作业。我可以限制民意调查SCM作业每天仅运行一次吗?


阅读 233

收藏
2020-07-25

共1个答案

一尘不染

詹金斯(Jenkins)本身不提供这种行为(“每天仅针对第一个更改运行”)。

您需要将其分为两部分;第一个是轮询SCM,第二个要注意该作业每天运行不超过一次。

可能的解决方案:

  • 保持当前的轮询工作,每5分钟检查一次更改
  • 添加一个构建步骤,该步骤将在运行后禁用该作业(从而防止在这一天再次运行)
  • 创建另一个作业,该作业每天早晨在0:00(重新)启用轮询作业,因此轮询作业可以在下一次更改时运行

如果您不希望轮询作业进入“禁用”状态,则还可以在运行结束时从作业配置中删除该作业的SCM轮询,并让第二个作业重新建立。这有点复杂,因为您需要修改作业配置。

无论如何,“更改”将始终指代轮询作业的最后一次运行。因此,如果在第1天有两个更改A和B,则轮询作业将在第1天针对“ A”运行一次,然后在第2天立即针对“
B”再次运行。

2020-07-25