07--jenkins自动化构建
1 自动化构建
1.1 定时构建
1.1.1 实例
简单的几个构建实例:
每天凌晨3:00 跑一次: H 3 * * *
每隔5分钟构建一次: H/5 * * * *
每五小时构建一次: H H/5 * * *
每天中午12点定时构建一次: H 12 * * *
每天下午 17点前 定时构建一次: H 17 * * *
每15分钟构建一次: H/15 * * * *
1.1.2 Jenkins中使用
选择Jenkins 项目,构建触发器 --选择定时构建,日程表中输入 定时构建代码
如每五小时构建一次,如下图:
1.2 SCM 构建(轮询)
选择Jenkins 项目,构建触发器 --选择轮询SCM,日程表中输入
如每五分钟构建一次,如下图:
1.3 构建触发器(webhook)
构建触发器(webhook),也称为钩子,实际上是一个HTTP回调,其用于在开发人员向gitlab提交代码后
能够触发jenkins自动执行代码构建操作
常见场景:
只有在开发人员向develop分支提交代码的时候会自动触发代码构建和部署至测试环境,而向主分支提交的代码
不会自动构建,需要运维人员手动部署代码到生产环境。
1.3.1 触发远程构建
1.3.1.1 Jenkins配置构建 Webhook 触发器
生成触发器链接
http://10.0.0.40:8080/job/update_git/build?token=6666
1.3.1.2 Jenkins 配置生成用户的 API Token
新建用户:
系统管理 ----> Jenkins专有用户数据库----> 新建用户
修改用户配置— 添加API Token
- 注意: 此值是一次性的,所以必须立即复制Token
curl 命令测试触发并验证远程触发构建
curl http://admin:11c71afa1be0f5b17a819ec9765019548b@10.0.0.40:8080/job/update_git/build?token=6666
#如果执行正常,则无任何显示
查看jenkins上这个任务
1.3.1.3 Jenkins 安装插件(旧版才需安装,新版不需要)
系统管理-管理插件-可选插件-Gitlab和Gitlab Hook 两个插件
系统管理—全局安全设置
确认选中”登录登录用户可以做任何事“
1.3.1.3.1 Gitlab配置 Webhook
在gitlab服务器指定项目中创建webhook,输入下面网址
#方法1
http://10.0.0.40:8080/project/update_git/build?token=6666
#方法2
http://10.0.0.40:8080/project/update_git/build
在secret token处添写6666
测试
测试结果
1.3.1.3.2 GitLab Webhook URL
1.3.1.3.2.1 配置jenkins触发器
构建触发器----> GitLab Webhook URL----下面生成证书在保存
1.3.1.3.2.2 配置Gitlab Webhook
测试结果如下