Jenkins&Gitlab:Webhook触发多分支项目构建

项目

在Jenkinsfile中,添加配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
triggers {
GenericTrigger (
// 构建时的标题
causeString: 'Triggered by $ref',
// 获取POST参数中的变量,key指的是变量名,通过$ref来访问对应的值,value指的是JSON匹配值(参考Jmeter的JSON提取器)
// ref指的是推送的分支,格式如:refs/heads/master
genericVariables: [[key: 'ref', value: '$.ref']],
// 打印获取的变量的key-value,此处会打印如:ref=refs/heads/master
printContributedVariables: true,
// 打印POST传递的参数
printPostContent: true,
// regexpFilterExpression与regexpFilterExpression成对使用
// 当两者相等时,会触发对应分支的构建
regexpFilterExpression: '^refs/heads/(master|production)$',
regexpFilterText: '$ref',
// 与webhook中配置的token参数值一致
token: 'mytoken'
)
}

Jenkins

安装插件:Multibranch Scan Webhook Trigger

在多分支项目配置中的Scan Multibranch Pipeline Triggers选择并添加:

jenkins

Gitlab

在gitlab相应项目的配置->集成,webhook,在Url中填入:
gitlab

结束。

分享到 评论