我在Jenkins中添加了一个新工作,我想定期安排。
从配置作业,我正在检查“定期构建”复选框,并在Schedule文本字段中添加了表达式:
15 13 * * *
但是它没有在预定的时间运行。
这是安排工作的正确程序吗?
该作业应该在4:20 AM运行,但它没有运行。
我在Jenkins中添加了一个新工作,我想定期安排。
从配置作业,我正在检查“定期构建”复选框,并在Schedule文本字段中添加了表达式:
15 13 * * *
但是它没有在预定的时间运行。
这是安排工作的正确程序吗?
该作业应该在4:20 AM运行,但它没有运行。
当前回答
为了每5分钟调度一次cron作业,你需要像这样定义cron设置:
*/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”的例子
在Jenkins中调度作业的步骤:
点击职位要求的“配置” 向下滚动到“构建触发器”-副标题 定期单击“生成”的复选框 在schedule字段中添加时间计划,例如:@midnight
注意:在schedule字段下,可以看到最后和下一个日期-时间运行。
Jenkins还支持预定义的别名来调度构建:
@每小时,@每天,@每周,@每月,@午夜
@hour——>每小时开始构建一次——> 0 * * * *
@daily, @midnight——>每天午夜——> 0 0 * * *
@weekly ->每周在周日早上午夜进行构建-> 0 0 * * 0
@monthly——>每个月的第一天午夜构建——> 0 0 1 * *
另一个例子,如何只在一周的某一天运行:
# Every Sunday at 19:00
0 19 * * 0
最后的数字是星期几,如下表所示:
0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday
如果你想知道一周有多少天,你可以这样加逗号:
# Monday, Wednesday and Friday:
0 19 * * 1,3,5
Jenkins在调度中使用Cron格式。 你可以参考这个链接了解更多信息https://en.wikipedia.org/wiki/Cron。 还有一件事,詹金斯为我们提供了一个非常有用的预览。请看截图。
我希望这对你有所帮助。谢谢
*/5 * * * *表示每5分钟
5 * * * *表示每小时的第5分钟
为了每5分钟调度一次cron作业,你需要像这样定义cron设置:
*/5 * * * *