我在Jenkins中添加了一个新工作,我想定期安排。

从配置作业,我正在检查“定期构建”复选框,并在Schedule文本字段中添加了表达式:

15 13 * * *

但是它没有在预定的时间运行。

这是安排工作的正确程序吗?

该作业应该在4:20 AM运行,但它没有运行。


当前回答

通过将计划周期设置为15 13 * * *,您告诉Jenkins在每年每个月的每一天的第13个小时的第15分钟安排构建。

Jenkins使用了一个cron表达式,不同的字段是:

每小时分钟数(0-59) 一天中的小时数(0-23) Day month每月中的第几天(1-31) MONTH一年中的月份(1-12) DAYWEEK星期几(0-7),其中0和7代表星期日

如果你想每5分钟安排一次构建,这将完成工作:*/5 * * * *

如果你想把你的构建安排在每天的8h00,这将完成工作:0 8 * * *

在过去的几个版本中(2014),Jenkins有了一个新的参数H(摘自Jenkins代码文档):

为了允许定期计划的任务在系统上产生均匀的负载,应该尽可能使用符号H(表示“散列”)。 例如,在12个日常工作中使用0 0 * * *将在午夜导致一个很大的峰值。相比之下,使用H H * * *仍然会每天执行一次每个作业,但不是同时执行所有作业,更好地使用有限的资源。

还要注意:

符号H可以被认为是一个范围内的随机值,但它实际上是作业名称的散列,而不是随机函数,因此对于任何给定的项目,该值都保持稳定。

更多使用“H”的例子

其他回答

为了每5分钟调度一次cron作业,你需要像这样定义cron设置:

*/5 * * * *

Jenkins允许您多次设置,以换行符分隔。

如果你需要每天早上7点构建,以及每个周日下午4点,下面的工作很好。

H 7 * * *

H 16 * * 0

*/5 * * * *表示每5分钟

5 * * * *表示每小时的第5分钟

通过将计划周期设置为15 13 * * *,您告诉Jenkins在每年每个月的每一天的第13个小时的第15分钟安排构建。

Jenkins使用了一个cron表达式,不同的字段是:

每小时分钟数(0-59) 一天中的小时数(0-23) Day month每月中的第几天(1-31) MONTH一年中的月份(1-12) DAYWEEK星期几(0-7),其中0和7代表星期日

如果你想每5分钟安排一次构建,这将完成工作:*/5 * * * *

如果你想把你的构建安排在每天的8h00,这将完成工作:0 8 * * *

在过去的几个版本中(2014),Jenkins有了一个新的参数H(摘自Jenkins代码文档):

为了允许定期计划的任务在系统上产生均匀的负载,应该尽可能使用符号H(表示“散列”)。 例如,在12个日常工作中使用0 0 * * *将在午夜导致一个很大的峰值。相比之下,使用H H * * *仍然会每天执行一次每个作业,但不是同时执行所有作业,更好地使用有限的资源。

还要注意:

符号H可以被认为是一个范围内的随机值,但它实际上是作业名称的散列,而不是随机函数,因此对于任何给定的项目,该值都保持稳定。

更多使用“H”的例子

试试这个。

20 4 * * *

查看下面的截图

参考网址- https://www.lenar.io/jenkins-schedule-build-periodically/