Jenkins中使用Generic Webhook Trigger插件实现持续集成

项目环境

宝塔Linux面板+Docker+Jenkins+gitee

目的

实现每次push推送dev分支到gitee上,Jenkins自动构建项目;push其它分支时,不运行。

实现方法

1.在Jenkins上安装Generic Webhook Trigger插件

在"系统设置--插件管理--可选插件"界面搜索:Generic Webhook Trigger,可以看到,点击安装,然后重启。

这里是已经安装过,所以在"已安装"界面里!

2.在项目中配置Generic Webhook Trigger
2.1 选择 Generic Webhook Trigger 为构建触发器

Generic Webhook Trigger 提示文字翻译

由HTTP请求http://JENKINS_URL/generic-webhook-trigger/invoke触发的(JENKINS_URL为jenkins登录的域名和端口号,例:121.99.172.228:6666)

Git存储库中有一些示例配置。

你可以在这里摆弄JSONPath。您可能还想在这里检查语法。

您可以在这里摆弄XPath。您可能还想在这里检查语法。

您可以在这里摆弄正则表达式。您可能还想在这里检查语法。

如果您的作业没有参数化,那么解析后的变量将直接贡献给构建。如果您的作业是参数化的,并且您解析了与这些参数具有相同名称的变量,那么插件将在触发作业时填充参数。这意味着,例如,您可以将参数与SCM插件(如GIT plugin)结合使用,以选择分支。

2.2 在 Post content parameters 中定义post请求的变量

ref 变量可以自己取名称,在后边构建配置上会使用到;

但是 $.ref 中的 ref 是根据实际post请求传递过来的 json 参数 获取的 key名称。

2.3 配置 Token

可选的标记。如果指定了令牌,则只有在调用http://JENKINS_URL/generic-webhook-trigger/invoke时提供令牌时才能触发此作业。它可以作为:

查询参数/调用?令牌= TOKEN_HERE

一个令牌头令牌:TOKEN_HERE

A授权:承载头授权:承载TOKEN_HERE

2.4 配置 Optional filter 构建条件

多个值组合参考写法:

Expression:^(a_b)$ a、b替换成需要匹配的字符串

Text:ref_name ref 和 name是上面配置的两个参数值

Expression 和 Text 中间都用 "_" 连接(也可是其它任意符号)。

2.5 登录 gitee 添加对应项目下的 WebHooks

登录 gitee → 对应项目 → 管理 → WebHooks → 添加 webHook

URL :http://121.99.172.228:6666/generic-webhook-trigger/invoke?token=vue-admin-dev

WebHook 密码/签名密钥:12345

URL中把 121.99.172.228:6666 换成自己 Jenkins 登录的域名和端口号,vue-admin-dev 换成 之前配置的 Token 值。

WebHook 密码/签名密钥 这个是鉴权方式,如选择密码可随便填。

事件选择 Push。

添加 后 点击测试 查看请求历史 返回 200 即表示成功。

相关推荐
慕容雪_14 分钟前
运维笔记-笔记本无线网卡连接wifi,有线网卡连接内网
运维·内网·远程
小杰帅气22 分钟前
进程优先级与切换调度
linux·运维·服务器
华纳云IDC服务商23 分钟前
DNS负载均衡能自动避开故障服务器吗?
运维·服务器·负载均衡
奋斗的阿狸_198626 分钟前
键盘组合键监听与 xterm 唤醒程序
linux·运维·服务器
小张成长计划..29 分钟前
【linux】2:linux权限的概念
linux·运维·服务器
ben9518chen31 分钟前
Linux操作系统基本使用
linux·运维·服务器
以太浮标34 分钟前
华为eNSP模拟器综合实验之- HRP(华为冗余协议)双机热备
运维·网络·华为·信息与通信
慧一居士35 分钟前
Gitea和GitLab对比
运维·gitlab·gitea
不像程序员的程序媛39 分钟前
Linux开机自启动systemd配置
linux·运维·服务器
墨香幽梦客1 小时前
企业IT运维流程标准化:从事件管理到问题闭环的自动化实践
运维·自动化