我在 Jenkins 中添加了一个新工作,我想定期安排它。
从 Configure job ,我正在检查“Build Periodically”复选框,并在 Schedule 文本字段中添加了表达式:
15 13 * * *
但它不会在预定时间运行。
安排工作的程序是否正确?
作业应该在凌晨 4:20 运行,但它没有运行。
通过将调度周期设置为15 13 * * *您告诉 Jenkins 在每天第 13 小时的第 15 分钟安排构建。
Jenkins 使用了一个cron 表达式,不同的字段是:
如果您想每 5 分钟安排一次构建,这将完成这项工作:*/5 * * * *
*/5 * * * *
如果您想在每天 8 点安排您的构建,这将完成这项工作:0 8 * * *
0 8 * * *
对于过去的几个版本(2014),Jenkins 有一个新参数,H(摘自Jenkins 代码文档):
H
为了允许定期安排的任务在系统上产生均匀的负载,H应尽可能使用符号(代表“ash”)。 例如,使用0 0 * * *十几个日常工作会在午夜导致一个大的峰值。相比之下,usingH H * * *仍然会每天执行一次每个作业,但不是同时执行一次,更好地使用有限的资源。
为了允许定期安排的任务在系统上产生均匀的负载,H应尽可能使用符号(代表“ash”)。
例如,使用0 0 * * *十几个日常工作会在午夜导致一个大的峰值。相比之下,usingH H * * *仍然会每天执行一次每个作业,但不是同时执行一次,更好地使用有限的资源。
0 0 * * *
H H * * *
另请注意:
该H符号可以被认为是一个范围内的随机值,但它实际上是作业名称的散列,而不是随机函数,因此该值对于任何给定项目都保持稳定。