当前位置: 首页 > article >正文

Github Webhook触发Jenkins自动构建

1.功能说明

Github Webhook可以触发Jenkins自动构建,通过配置Github Webhook,每次代码变更之后(例如push操作),Webhook会自动通知Jenkins服务器,Jenkins会自动执行预定义的构建任务(如Jenkins pipeline),这样的话开发者就不需要手动操作Jenkins了,Webhooks直接触发构建,提高开发流程的效率和自动化

2.前提条件

  1. Jenkins已安装并完成初始化操作
  2. 安装了所需的Jenkins插件:GitHub plugin(初始化时选择安装推荐插件会自动安装该插件)
  3. Jenkins的pipeline相关配置:触发器构建中勾选:GitHub hook trigger for GITScm polling

3.配置过程

3.1 关闭CSRF防护

Jenkins 默认启用了 CSRF 保护,可能导致 Webhook 请求被拒绝,导致Webhook配置报错:

Last delivery was not successful. Invalid HTTP Response: 403

即GitHub没有适当的访问权限

可以通过添加适当的JVM参数来关闭该权限:

-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true

可以在/usr/bin/jenkins(启动脚本)中添加该参数,也可以手动启动Jenkins:

java -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true -jar /usr/share/java/jenkins.war

启动之后可以在Security中看到CSRF已经关闭:

注意:不要尝试从config.xml中修改参数来关闭CSRF,启动Jenkins会默认修复你修改的配置

3.2 Github Webhook配置

进入repository -> settings,找到Webhook,开始进行配置,有关如何配置在GitHub Plugin的文档中有详细说明:https://plugins.jenkins.io/github/

  1. 填写Payload URL
  2. 修改Content typejson格式
  3. 勾选push触发即可
  4. 其余保持默认

点击update webhook,如下图所示则配置成功:


http://www.kler.cn/a/323283.html

相关文章:

  • 函数指针示例
  • SOLIDWORKS Toolbox:一键自动化,让紧固件与零部件管理更高效
  • 微信小程序 https://thirdwx.qlogo.cn 不在以下 downloadFile 合法域名列表中
  • Android笔记(三十七):封装一个RecyclerView Item曝光工具——用于埋点上报
  • # ubuntu 安装的pycharm不能输入中文的解决方法
  • FPGA使用Verilog实现CAN通信
  • mac输入法 cpu占用,解决mac使用输入法出现卡顿延迟
  • 2:数据结构:列表与元组
  • 初识Tomcat
  • 【git lfs 问题记录】
  • 大数据复习知识点1
  • 独立站如何批量查收录?常用的3个的方法及其具体操作步骤
  • Linux学习笔记之重点概念、实用技巧和常见问题解答。
  • debian linux 只安装mysql client
  • 《AI办公类工具PPT系列之六——轻竹办公》
  • 从静态多态、动态多态到虚函数表、虚函数指针
  • 深度学习------------------------RNN(循环神经网络)
  • OJ在线评测系统 在Linux虚拟机搭建Docker 概念 入门 安装
  • 代码随想录算法训练营Day13
  • 代码为笔,合作作墨,共绘共赢画卷———未来之窗行业应用跨平台架构
  • 【论文阅读】StoryMaker | 更全面的人物一致性开源工作
  • element-plus中日历组件设置起始为周一
  • git配置ssh免密
  • 【JavaEE】——多重锁,死锁问题和解决思路
  • vue3学习记录-computed
  • OJ在线评测系统 后端判题机架构搭建 使用原生实现Java安全管理器环境隔离