首页 > 解决方案 > 用于管理多个作业的 cron/周期性构建的 Jenkins 插件?

问题描述

我有一个运行几十个 NodeJs 应用程序的 Jenkins 安装。

目前,每个作业都只是在主分支的 GitHub webhook 上构建。

我还想定期构建每个项目,每天一次。不过,我不想将相同的 cron 复制/粘贴到 30 个作业配置中 - 主要是因为更新会变得乏味。

我环顾四周,没有找到任何明显的插件来管理共享 cron 模式等。

有什么选择吗?

标签: linuxjenkinscroncontinuous-integration

解决方案


这里的一个好主意可能是使用在 Jenkins 级别定义的全局变量。不幸的是,cron 作业字段不允许引用全局变量。

但是,有多种方法可以实现您的目标。

第一个解决方案是创建具有时间表的虚拟作业。该作业将使用构建后操作触发所有其他作业运行Build other projects。这样,您将只在虚拟作业上设置 cron 表达式,并且一旦虚拟作业运行,所有其他作业将被触发。

Build after other projects are built另一个类似的解决方案是在 Jenkins中使用选项。您可以在您拥有的一项作业上设置 cron 计划,并在Build after other projects are built为其余作业构建计划的作业后将其设置为构建。这样,“主要”计划作业将运行,所有其他作业将随之运行。


推荐阅读