Jenkins在进行流水线定时构建时,在jenkins主页面上选择需要定时构建的项目 -> 配置 -> 构建触发器 -> 定时构建,在日程表选框中按照格式要求填写。
Jenkins采用了著名的UNIX任务调度工具CRON所使用的配置方式,用5个字段代表5个不同的时间单位(中间用空格隔开),填写格式:
一行包含以下五个字段,每个字段之间用空格隔开:
MINUTE HOUR DOM MONTH DOW
其中:
- MINUTE:分钟(取0-59)
- HOUR:小时(取0-23)
- DOM:Day Of the Month,每月第X天(取1-31)
- MONTH:月(取1-12)
- DOW:Day of the Week,每周第X天(取0-7,其中0和7表示周日)
要为一个字段指定多个值,可以使用以下运算符(按优先级排序):
- *:指定所有有效值
- M-N:指定一个值范围
- M-N/X 或 */X:指定步长,以X的间隔逐步达到指定范围或整个有效范围
- A,B,...,Z:枚举多个值
为了使定时计划的任务在系统上产生均匀的负载,应尽可能使用符号H(“哈希”)。可以将H符号视为某个范围内的随机值。
符号H也可以和范围、步长一起使用。
此外,@yearly,@annually,@monthly,@weekly,@daily,@midnight 和 @hourly 作为简化别名可以直接使用。
举例:
@hourly 等同于 H * * * *
@midnight 表示在凌晨0:00到2:59之间某个时间