每次手动打包部署累成狗?Jenkins的计划构建功能能让你准时下班,告别996。
一、什么是Jenkins计划构建?
简单来说,Jenkins计划构建就是给你的构建任务设置一个"闹钟",当闹钟响起时,Jenkins会自动执行你预设的构建任务。这就像是雇佣了一个不知疲倦的机器人助手,它会在你设定的时间点准时开始工作,无论是深夜、周末还是节假日。
计划构建在实际项目中有着广泛的应用场景:
- 每日夜间构建:在代码提交较为频繁的开发阶段,可以设置夜间自动构建,第二天早上团队就能看到最新版本的构建结果和测试报告。
- 定期测试执行:对于需要长时间运行的测试套件,可以安排在周末或系统空闲时段执行。
- 发布版本自动化:在固定发布周期的项目中,可以提前设置发布构建任务,到点时自动打包和部署。
- 依赖资源可用性检查:定期检查项目依赖的外部资源是否可用。
Jenkins提供了多种类型的计划构建方式,每种都有其适用场景,让我们一起来了解一下。
二、Jenkins计划构建的几种方式
1. 定时构建(Build Periodically)
定时构建是最基本也是最常用的计划构建方式,它使用类UNIX的cron表达式来定义执行时间。想象一下,这就像是给你的构建任务设置一个高级版日历闹钟,不仅可以设置每天响铃,还能设置复杂的规则,比如"每周一到周五的上午10点和下午4点"。
在Jenkins任务配置页面中,找到"构建触发器"部分,勾选"Build periodically"选项,然后在"日程表"输入框中填写cron表达式即可。
Cron表达式格式
Jenkins使用的cron表达式由5个字段组成,字段之间用空格或制表符分隔:
分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期几(0-7,0和7都代表星期日)
Cron特殊符号
*:匹配所有值。例如* * * * *表示每分钟执行一次。H:散列值,用于负载均衡。例如H * * * *表示每小时执行,但不会与其他使用相同表达式的任务同时运行。/X:间隔步进。例如H/15 * * * *表示每隔15分钟执行一次。A,B:枚举多个值。例如0 10,16 * * *表示每天上午10点和下午4点执行。
定时构建示例
H/30 * * * *:每30分钟构建一次H H/2 * * *:每2小时构建一次0 8 * * *:每天早上8点构建一次0 8,12,22 * * *:每天的8点、12点、22点,一天构建3次H/3 0-23 * * 1-5:每3分钟构建一次,每天0点至23:59,周一至周五执行该任务
2. 轮询SCM(Poll SCM)
轮询SCM与定时构建类似,但它只会在检测到源码变更时才触发构建。这就像是安排了一个聪明的保安,他不仅会按时巡逻,而且只在发现有人进入大楼时才拉响警报。
在"构建触发器"部分勾选"轮询SCM",然后同样使用cron表达式设置检查频率。
示例:
H/5 * * * *:每5分钟检查一次源码变化
这种方式的优点是避免了不必要的构建,节省了资源,特别适合在代码提交不频繁的项目中使用。

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



