首页 > Web开发 > 详细

Webhook触发Jenkins 多分支项目构建

时间:2021-08-14 11:58:05      阅读:29      评论:0      收藏:0      [点我收藏+]

总共发现了两种配置方法,分别是通过不同的插件实现

Generic Webhook Trigger

安装插件:Generic Webhook Trigger
技术分享图片

在Jenkinsfile中,添加配置:

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‘
    )
}

如:
技术分享图片

在gitee中配置webhook,在Url中填入:

https://your_IP/generic-webhook-trigger/invoke?token=mytoken

如:
技术分享图片

提交代码后,gitee会触发jenkins的多分支流水线项目扫描分支。当$ref的值符合正则表达式^refs/heads/(master|production)$,会触发项目的构建。

注意:当你首次在Jenkinsfile配置triggers后,提交git仓库后不会自动触发构建。原因是:配置触发构建的jenkinsfile未拉取到jenkins项目中。

其他更详细的用法,请参考:https://gitbook.curiouser.top/origin/jenkins-generic-webhook-trigger插件.html

Multibranch Scan Webhook Trigger

总结

Generic Webhook Trigger的配置更灵活,但不太符合常识

Multibranch Scan Webhook Trigger虽然功能简单,但更人性化

Webhook触发Jenkins 多分支项目构建

原文:https://www.cnblogs.com/testopsfeng/p/15139538.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!