文章目录
1、Jenkins触发器种类
jenkins内置4种构建触发器
触发远程构建
其他工程构建后触发(Build after other projects are build)
定时构建(Build periodically)
轮询 SCM(Poll SCM)
2、触发远程构建
创建new item项目web_app01
应用保存
身份验证令牌任意,记住记住不得改变
URL:http://192.168.199.133:8888/job/web_demo_pipeline/build?token=8888
打开web,输入URL,触发Jenkins自动构建
3、其他工程构建后触发
先创建pre_project前置流水线工程
前置工程近示例,无需git拉取代码,输出语句即可
回到刚刚创建的web_app01项目配置中
开始构建前置项目
手动构建前置项目,前置项目构建完成后直接触发web_app01项目
4、定时构建
定时字符串从左往右分别是;分 时 日 月 周
案例
每 30 分钟构建一次(H 代表形参):H/30 * * * *
每 2 个小时构建一次: H H/2 * * *
每天的 8 点,12 点,22 点,一天构建 3 次(多个时间点中间用逗号隔开):0 8,12,22 * * *
每天中午 12 点定时构建一次:H 12 * * *
每天下午 18 点定时构建一次:H 18 * * *
在每个小时的前半个小时内的每 10 分钟:H(0-29)/10 * * * *
每两小时一次,每个工作日上午 9 点到下午 5 点(也许是上午10:38,下午12:38,下午2:38,下午4:38:H H(9-16)/2 * * 1-5
回到web_app01项目
5、轮询SCM
轮询 SCM,是指定时扫描本地代码仓库的代码是否有变更,如果代码有变更就触发项目构建
注意:这次构建触发器,Jenkins 会定时扫描本地整个项目的代码,增大系统的开销,不建议使用。
修改idea代码提交到gitab中
查看是否自动构建
6、开启webhook功能
登陆gitlab中,使用 root 账户登录到后台,点击 Admin Area -> Settings -> Network
勾选 Allow requests to the local network from web hooks and services
第二步 回到Jenkins中
在项目中添加webhook,添加插件“ webhook和gitlab ”插件
在web_app01项目配置
在gitlab项目中添加webhook
回到Jenkins
注意:以下设置必须完成,否则报错
manage Jenkins------》Configure system
回到gtlab再次测试
成功后自动使用webhook完成构建
当更改了开发环境的代码后
代码提交,Jenkins自动创建
7、参数化构建
7.1、简介作用
有时在项目构建的过程中,我们需要根据用户的输入动态传入一些参数,从而影响整个构建结果,
这时 我们可以使用参数化构建。Jenkins 支持非常丰富的参数类型。
设想一个实际的应用场景,在一个大的项目中,肯定不可能只有一个版本,可能有主版本,v1,v2 等等。
这时候 master 分支就存放主版本的代码,v1 分支就存放 v1 版本的代码,互相隔离不干扰。
这时候参数化构建就有了用武之地。
7.2、jenkins开启参数化构建功能
回到web_app01中取消所有构建触发器选项
完成后点击应用保存
项目创建分支,并推到gitlab中
注意:SCM的代码中,一定要把master换成 ‘‘branch’’
7.3、新建分支并推送并构建发布
新建分支V1
构建master分支项目代码
构建V1分支代码