jenkins-Generic Webhook Trigger指定分支构建

文章目录

  • 1 需求分析
      • 1.1 关键词 :
  • 2、webhooks 是什么?
  • 3、配置步骤
    • 3.1 github 里需要的仓库配置:
    • 3.2 jenkins 的主要配置
    • 3.3 option filter配置用于匹配目标分支 实现指定分支构建


1 需求分析

一个项目一般会开多个分支进行开发,测试,发布。
例如dev 分支,test分支, prod 分支。 那么想达到这样的一个效果:dev分支写的代码push后不触发Genkins构建,只有test分支push才触发Genkins构建。那该怎么配置呢?

1.1 关键词 :

application/json
option filter ,
$.ref


2、webhooks 是什么?

WebHooks是一种用于实现实时通信和事件触发的机制。它允许应用程序将数据传送到另一个应用程序,而不需要定期轮询或等待请求。当特定事件在一个应用程序中发生时,WebHooks会向另一个应用程序发送一个HTTP请求,并将相关的数据传递过去。这种机制可用于实现各种功能,例如实时数据同步、自动化流程触发、通知和提醒等。

这里我使用是github webhooks , 与 gitlab webhooks使用大同小异。想要的效果:当test分支的代码被Push,触发Jenkins构建代码。

3、配置步骤

3.1 github 里需要的仓库配置:

在这里插入图片描述
注意了,这一步关键,上图content type 设置为上图 aplication/x-www-form-unlrencoded
返回的格式 带有payload。 这时候表达式是设置为 $.payload[0] ,而我们的表达式是 $.ref 需要把content type配置为 application/json

3.2 jenkins 的主要配置

github webhooks 里content type配置为 application/json 返回格式下图:

在这里插入图片描述

上面console output 中 : Generic Cause 的字样,received 返回打印需要按下图配置与勾选print post content 和 print contribute variables
在这里插入图片描述

这时候我们就可以 用 $.ref ,意思是取返回对象里面ref 的值,正常打印是 “refs/heads/dev”, “refs/heads/test” 之类的表示不同分支

在这里插入图片描述

3.3 option filter配置用于匹配目标分支 实现指定分支构建

下面 ^(refs/heads/test)$ 就是 匹配 r e f ( 也就是上面配置 ref (也就是上面配置 ref(也就是上面配置.ref ,取到返回对象的ref的值 “refs/heads/dev”, “refs/heads/test” 之类的 ,正则匹配的是test分支,也就是test分支才会构建)
在这里插入图片描述
我们也可以在github webhooks 查看表达式(regexpFilterExpression),是否匹配,是否触发构建(triggered 字段为true 是触发构建的意思,false则不触发)

在这里插入图片描述
这样需求就大致实现了
在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/246623.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32--Wi-Fi插座_风扇_灯

项目需求 两个互相通信的双方,波特率必须相同!!!!!! 通过 ESP8266 模块,实现手机控制 wifi 插座 / 风扇 / 灯。 项目设计 串口 1 用于与 ESP8266 通讯,串口 2 连接 PC ,用于打印 log ,查看系统状态。 项目实现 注意&a…

ShenYu网关注册中心之HTTP注册原理

文章目录 1、客户端注册流程1.1、读取配置1.1.1、用于注册的 HttpClientRegisterRepository1.1.2、用于扫描构建 元数据 和 URI 的 SpringMvcClientEventListener 1.2、扫描注解,注册元数据和URI1.2.1、构建URI并写入Disruptor1.2.2、构建元数据并写入Disruptor1.2.…

GDPU 数据结构 天码行空14

实验十四 查找算法的实现 一、【实验目的】 1、掌握顺序排序,二叉排序树的基本概念 2、掌握顺序排序,二叉排序树的基本算法(查找算法、插入算法、删除算法) 3、理解并掌握二叉排序数查找的平均查找长度。 二、【实验内容】 …

GO的sql注入盲注脚本

之间学习了go的语法 这里就开始go的爬虫 与其说是爬虫 其实就是网站的访问如何实现 因为之前想通过go写sql注入盲注脚本 发现不是那么简单 这里开始研究一下 首先是请求网站 这里貌似很简单 package mainimport ("fmt""net/http" )func main() {res, …

【算法与数据结构】332、LeetCode重新安排行程

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:本题比较属于困难题目,难点在于完成机票、出发机场和到达机场之间的映射关系,再…

零信任 SASE 办公安全解决方案:提升企业网络安全与灵活性

​零信任 SASE(Secure Access Service Edge)办公安全解决方案为企业带来了许多好处,相较于以前的解决方案有明显差异。这个方案的出现是为了应对企业面临的新的网络安全挑战和远程办公的需求。 1、统一的网络安全管理:SASE 将网络…

【MySQL学习之基础篇】SQL

文章目录 1. SQL的通用语法2. SQL 分类3. 数据定义语言(DDL)3.1. 数据库操作3.2. 表操作3.2.1. 数据类型3.2.2. 表的创建和查询操作3.2.3. 应用案例3.2.3. 表的修改操作3.2.4. 表的删除操作 4. 数据操作语言(DML)4.1. 添加数据4.2. 修改数据4.3. 删除数据…

基于python实现原神那维莱特开转脚本

相信不少原友都抽取了枫丹大C那维莱特,其强力的输出让不少玩家爱不释手。由于其转的越快,越不容易丢伤害的特点,很多原友在开转时容易汗流浃背,所以特意用python写了一个自动转圈脚本,当按住鼠标侧键时,即可…

每天一点python——day94

#每天一点Python——94 #面向对象的三大特征——封装 封装:隐藏内部细节,对外提供操作方式。【提高程序的安全性】 继承:在函数调用时,使用’形参名称值‘的方式进行传参,传递参数的顺序可以与定义时参数顺序不同【提高…

搭配环境—Python解释器

对于一些库,需要创建虚拟环境(就是给你电脑创建一个虚拟的地方来存,这个虚拟的地方有很多,需要自己找) 对于人脸识别项目存在 使用的这个解释器,其他解释器可以去envs找找

JVM调优:参数(学习笔记)

一、jvm的运行参数 标准参数 -help、-version、-D参数 jvm的标准参数,一般都是很稳定的,在未来的JVM版本中不会改变,可以使用java -help 检索出所有的标准参数。 通过以下命令查看: 命令:java -help 可以看到我们经常…

亚马逊云科技AI应用 SageMaker 新突破,机器学习优势显著

(声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 亚马逊云科技开发者社区、知乎、自媒体平台、第三方开发者媒体等亚马逊云科技官方渠道) Amazon SageMaker是一种机器学习服务,帮助开发人员快速…

数据结构之树

1. 遍历 b站收藏夹 2. 二叉树的存储 2.1 顺序存储 Linear_Tree.c 不推荐使用&#xff0c;因为会造成空间浪费 #include "stdio.h" #include "stdlib.h" #include "string.h" #include<stdbool.h> typedef bool status;#define MAXSIZE 3/…

【NSX-T】7. 搭建NSX-T环境 —— 部署和配置 Edge Cluster

目录 7. 部署和配置 Edge Cluster7.1 配置 Edge 节点&#xff08;1&#xff09;Name and Description&#xff08;2&#xff09;Credentials&#xff08;3&#xff09;Configure Deployment&#xff08;4&#xff09;Configure Node Settings&#xff08;5&#xff09;Configur…

RS485数据采集网关如何采集传感器、仪器仪表数据?

在工业自动化和数据采集领域&#xff0c;RS485作为一种常见的通信接口&#xff0c;被广泛应用于连接传感器、仪器仪表等设备。为了满足对这些设备数据的采集和处理需求&#xff0c;RS485数据采集网关应运而生。本文将围绕“RS485数据采集网关如何采集传感器、仪器仪表数据&…

说说对React高阶组件的理解?应用场景?

面试官&#xff1a;说说对高阶组件的理解&#xff1f;应用场景? 一、是什么 高阶函数&#xff08;Higher-order function&#xff09;&#xff0c;至少满足下列一个条件的函数 接受一个或多个函数作为输入输出一个函数 在React中&#xff0c;高阶组件即接受一个或多个组件作…

C# WPF上位机开发(键盘绘图控制)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 在软件开发中&#xff0c;如果存在canvas图像的话&#xff0c;一般有几种控制方法。一种是鼠标控制&#xff1b;一种是键盘控制&#xff1b;还有一…

玄关柜和鞋柜是一回事吗?福州中宅装饰,福州装修

玄关柜和鞋柜虽然都用于存放鞋子&#xff0c;但它们在概念上有所不同。玄关柜是一个更大的概念&#xff0c;它包括鞋柜和其他功能区域&#xff0c;可以说鞋柜是玄关柜的一部分。 1️⃣概念上的不同 玄关柜是一种集成了鞋柜、挂衣架、换鞋凳等多种功能于一体的家居家具&#xf…

忘记了路由器的用户名和密码,怎么办?

注意&#xff1a;登录窗口会显示路由器型号&#xff0c;请务必确认是您自己路由器的界面。 解决方法 尝试输入登录密码 如果您的确忘了设置好的密码&#xff0c;就只能把路由器恢复出厂设置&#xff0c;没有超级密码。 恢复出厂前&#xff0c;不妨尝试输入可能的管理密码。一…

【STM32】USART串口协议

1 通信接口 通信的目的&#xff1a;将一个设备的数据传送到另一个设备&#xff0c;扩展硬件系统 通信协议&#xff1a;制定通信的规则&#xff0c;通信双方按照协议规则进行数据收发 USRT&#xff1a;TX是数据发送引脚&#xff0c;RX是数据接受引脚&#xff1b; I2C&#xf…