访问接口形式触发 {#访问接口形式触发}
首先看第一种,访问接口形式触发
先到我们的项目设置,选择构建触发器

选择触发远程构建
设置token
然后保存,访问输入框下面的URL
|-----------|-----------------------------------------------------------------------------------------------|
| 1 | hljs http http://121.89.163.191:8090/job/web_demo_pipeline/build?token=rubenweicowbeer |
然后发现我们的项目已经开始构建了

在其他项目构建后触发 {#在其他项目构建后触发}
第二种是在其他项目构建后触发
我们先创建一个前置工程

这个工程很简单,就输入一句话

然后回到之前项目,选择Build after other projects are built

输入前置工程后保存,构建前置工程

我们发现我们的前置工程构建后web_demo_pipeline工程也跟着构建了

定时构建 {#定时构建}
第三种是定时构建
首先是语法
|-----------------------|----------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 | hljs shell * * * * * 分 时 天 月 周 第一个*表示分钟,取值0~59 第二个*表示小时,取值0~23 第三个*表示一个月的第几天,取值1~31 第四个*表示第几月,取值1~12 第五个*表示一周中的第几天,取值0~7,其中0和7代表的都是周日 |
一些常用的表达式
|------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | hljs shell #每隔5分钟构建一次 H/5 * * * * #每两小时构建一次 H H/2 * * * #每天中午12点定时构建一次 H 12 * * * #每天凌晨6点/下午6点定时构建一次 H 6,18 * * * #在每个小时的前半个小时内的每10分钟 H(0-29)/10 * * * * #每两小时45分钟,从上午9:45开始,每天下午3:45结束 45 9-16/2 * * 1-5 #每两小时一次,每个工作日上午9点到下午5点(也许是上午10:38,下午12:38,下午2:38,下午4:38) H H(9-16)/2 * * 1-5 |
那么我们这次选择Build periodically

保存,五分钟后发现已经在构建了

轮询SCM {#轮询codescmcode}
轮询是在定时去查看远程仓库有无更新,有则构建,无则放弃

Hook触发构建 {#hook触发构建}
首先安装插件

然后就会发现构建触发器多了一种,我们把url复制下来
Build when a change is pushed to GitLab. GitLab webhook URL:http://121.89.163.191:8090/project/web_demo_pipeline

然后点击保存
首先,到GitLab上勾选Allow requests to the local network from web hooks and services

然后到项目下面的Settings点击Integrations

然后粘贴我们刚刚复制的url

点击Add webhook之后就是这样子啦

但我们还得配置一下Jenkins

取消选中

然后我们进行一下测试

成功之后会显示
也可以看到我们的Jenkins开始了构建
之后我们push代码,就会自动构建了
参数化构建 {#参数化构建}
首先,勾选This project is parameterized

然后点击Build with Parameters

然后编辑我们的Jenkinsfile

把原来
的地方替换为
创建分支,push代码

然后输入dev分支名称

51工具盒子