Jenkins-构建触发器-webhook
一、写在前面
我们已经了解到了,Jenkins 本身内置了4种构建触发器,分别是:
- 触发远程构建
- 其他项目工程构建后触发 Build after other projects are built
- 定时构建 Build periodically
- 轮循构建 Poll SCM
这四种构建触发器,基本可以满足我门日常工作的大部分需求,但也有其不足的地方:
2、触发远程构建:需要额外调用url 通知Jenkins 去触发构建
3、前置工程构建后触发:可以配合其他构建触发器一起使用,但是没有解决主要工程构建的问题
4、定时构建:会存在即使,远程仓库代码没有任何变动,也会触发构建,导致资源浪费
5、轮循构建:相比于定时构建,轮循构建只有在代码变动的情况下,才会触发构建,减少了一部分资源的浪费,但是依赖于轮询,其定时轮询机制本身会消耗Jenkins 服务器的资源,导致一些资源上的浪费。
综合以上问题:webhook 应运而生 (这里以 gitlab 为例)
webhook 拦截特定事件(如 push 代码后 ,自动触发远程构建),事件以 http 的方式通知第三方服务,如触发持续集成Jenkins。
二、gitlab 利用 webhook 实现push 代码后 Jenkins 自动构建
1、Jenkins 安装 gitlab 相关插件
2、插件安装完毕后,项目配置目录下 构建触发器器会新增 一个 触发器选项,选择并设置对应触发构建事件,保存殷勇即可
3、gitlab 上设置webhook
管理员登录 gitlab 远程仓库,进入指定项目,设置入口 点击进入webhook 配置页面
4、配置gitlab webhook,配置完成后点击 add webhook
经测试webhook 已经生效,接下来可以试试 本地push 代码 检测 是否生效了!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具