Jenkins触发器无法在管道中工作

时间:2020-08-18 10:14:22

标签: triggers jenkins-pipeline jenkins-groovy

我必须安排一个管道来触发将来的特定时间,我不能提及定期进行构建的一年,所以我必须在管道中添加触发器:

triggers {
    when { LocalDate.now()== "2020-08-17" }
    cron('35 11 17 8 1')
}

但这不会触发管道。但是,随着构建的进行,我会触发管道,但是我无法提及年份。我希望在专用日期和时间仅触发一次管道。另外,不允许我远程触发它。将不胜感激。

1 个答案:

答案 0 :(得分:0)

我相当确定您尝试的操作是不可能的,至少在管道语法中是不可能的。 LocalDate.now()仅在管道已运行 时才能运行,而cron命令直接通过Jenkins调度构建。

您可以做的是定期触发管道(例如,每年8月20日),并将第一步作为检查年份,如果不是正确的年份则停止运行。您也可以将辅助管道用于唯一目的,以防止主管道在其历史记录中中止运行。