如何在Jenkins建立日程安排?

时间:2011-08-09 17:26:59

标签: build jenkins schedule cronexpression timetable

如何安排Jenkins构建,以便它只能在每天的特定时间构建?

例如,从下午4点开始

0 16 1-7 * *

我理解为:0分钟,每个星期一下午4点从每个星期一到星期日,但每分钟都会建立:(

如果有任何建议,我将不胜感激。谢谢!

10 个答案:

答案 0 :(得分:92)

请阅读其他答案和评论,当我回答这个问题时,还有更多的信息和描述的细微差别(散列函数?),我不知道。

根据Jenkins自己的帮助(“?”按钮)进行计划任务,指定了5个字段:

  

此字段遵循cron的语法(略有不同)。具体来说,每行包含由TAB或空格分隔的5个字段:   每小时营业时间

我只是试图在下午4:42(我的大致当地时间)找到一份工作,并且它可以使用以下内容,但它需要大约30秒:

42 16 * * *

如果您想多次,我认为以下内容应该有效:

0 16,18,20,22 * * *

每天下午4点,6点,8点和10点。

答案 1 :(得分:69)

在作业配置中,可以定义各种构建触发器。通过定期构建,您可以通过定义一周中的日期或星期以及执行构建的时间来安排构建。

格式如下:

  

MINUTE(0-59),HOUR(0-23),DAY(1-31),MONTH(1-12),周日   (0-6)

可以插入字母H,代表单词Hash而不是任何值,它将根据项目名称的哈希码计算参数,这样如果你在构建几个项目同时你的构建机器,让我们说每天午夜,它们并非都从那里开始同时构建执行,每个项目根据其哈希代码在不同的时间开始执行。您还可以指定数字之间的值,即H(0,30)将返回可能的哈希值为0-30的项目的哈希码

示例:

每天早上8:30开始制作,周一至周五:

  • 30 08 * * 1-5

平日每日建立两次,午餐时间12:00和午夜00:00,周日至周四:

  • 00 0,12 * * 0-4

每天下午4点开始每天下午4点开始建设。 - 下午4:59或16:00-16:59取决于项目哈希:

  • H 16 * * 1-5

在午夜开始构建:

  • @midnight

或每周六午夜开始构建:

  • 59 23 * * 6

每个月的第一天凌晨2点到凌晨02:30之间:

  • H(0-30)02 01 * *

more on CRON expressions

答案 2 :(得分:11)

这个例子是每天一次,大约上午9点左右,下午5点左右。 (根据评论编辑)。

H 9,17 * * * 

答案 3 :(得分:4)

要在下午4点至下午6点之间每天建立一次,您可以使用

H H(15-17)* * *

答案 4 :(得分:3)

Jenkins中计划作业的步骤:

  1. 点击工作要求的“配置”
  2. 向下滚动到“ 构建触发器”-字幕
  3. 点击定期构建
  4. 的复选框
  5. 在“时间表”字段中添加时间表,例如@midnight

enter image description here

注意:在“计划”字段下,可以看到上一次和下一次日期时间运行。

Jenkins还支持预定义的别名以计划构建:

@hourly@daily@weekly@monthly@midnight

@hourly->在每小时开始时每小时生成-> 0 * * * *

@daily, @midnight->每天午夜构建-> 0 0 * * *

@weekly->每周每周日凌晨12点进行构建-> 0 0 * * 0

@monthly->每月在每月第一天的午夜进行构建-> 0 0 1 * *

答案 5 :(得分:2)

这似乎是cron expression。请注意,您的示例仅在每个月的第一到第七个版本16:00构建。您可能有某种其他错误,或者Jenkins使用非标准CRON表达式。

答案 6 :(得分:1)

詹金斯使用Cron Expressions

您只需输入以下内容即可安排每小时构建:

@hourly

答案 7 :(得分:1)

在Jenkins,我们的格式为:

  

分钟(0-59)小时(0-23)日(1-7)月(1-12)星期几

答案 8 :(得分:1)

H H(5-21)/2 * * 1-5

每隔2小时建立一次MON-FRI

答案 9 :(得分:0)

在周一至周日的下午4点尝试此操作

  

0 16 * * *

您可以检查在Jenkins下的“定期构建”中进行配置时显示的描述消息。(请参阅下面的屏幕截图)

  

“最后一次运行时间为IST的2019年11月17日(星期日)下午;   下次运行时间为IST的2019年11月18日,星期一。”

屏幕截图

enter image description here

时间“ 2019年11月18日,星期一, 05 “是指我们当前的系统秒数。