访问接口形式触发

首先看第一种,访问接口形式触发

先到我们的项目设置,选择构建触发器

image-20200721195419401

选择触发远程构建

设置token

然后保存,访问输入框下面的URL

1
http://121.89.163.191:8090/job/web_demo_pipeline/build?token=rubenweicowbeer

然后发现我们的项目已经开始构建了

image-20200721195647446

在其他项目构建后触发

第二种是在其他项目构建后触发

我们先创建一个前置工程

image-20200721200452598

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

image-20200721200541497

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

image-20200721200714737

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

image-20200721200831006

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

image-20200721200928687

定时构建

第三种是定时构建

首先是语法

1
2
3
4
5
6
7
* * * * *
分 时 天 月 周
第一个*表示分钟,取值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
#每隔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

image-20200721202554880

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

image-20200721203116558

轮询SCM

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

image-20200721203428778

Hook触发构建

首先安装插件

image-20200721211028072

然后就会发现构建触发器多了一种,我们把url复制下来

Build when a change is pushed to GitLab. GitLab webhook URL: http://121.89.163.191:8090/project/web_demo_pipeline

image-20200722185353919

然后点击保存

首先,到GitLab上勾选Allow requests to the local network from web hooks and services

image-20200722190215043

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

image-20200722190342693

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

image-20200722190514960

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

image-20200722190625841

但我们还得配置一下Jenkins

image-20200722190837425

取消选中

image-20200722191023880

然后我们进行一下测试

image-20200722191106045

成功之后会显示

image-20200722191843202也可以看到我们的Jenkins开始了构建

之后我们push代码,就会自动构建了

参数化构建

首先,勾选This project is parameterized

image-20200722202704375

然后点击Build with Parameters

image-20200722202414502

然后编辑我们的Jenkinsfile

image-20200722202537061

把原来image-20200722202549892

的地方替换为image-20200722202724501

创建分支,push代码

image-20200722203029420

然后输入dev分支名称

image-20200722203232773