Jekins+Generic Webhook Trigger插件[gogs],发布前端任务

本文主要是介绍Jekins+Generic Webhook Trigger插件[gogs],发布前端任务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Jekins+Generic Webhook Trigger插件[gogs],发布前端任务

  • 需要用到工具(点击,含安装教程)
  • 概述
  • Jekins需要用的插件;
    • 如何安装插件
    • 如何构建项目
    • 构建项目
        • Post content parameters:
        • Header parameters:
        • Request parameters:
        • Token:
        • 打印内容:
        • 如何对 Webhook 进行过滤:
    • 正片来了

需要用到工具(点击,含安装教程)

  • linux(centos7);
  • gogs
  • Jekins

概述

为什么我一个前端工程师,需要用到Jeskins,这个问题一直萦绕在我的心中,甚至是现在,我还在想这个问题要如何回答,但是没办法,公司技术能力有限,把我自己逼成了一个运维+前端,每次发布任务时,都是用最原始的git拉取,然后在linux上跑任务,很坑爹,后来改成了现在用shell脚本,到现在的是使用jekins,这是我第一次使用安装Jekins,怕自己以后忘记,So,写了这篇笔迹。

Jekins需要用的插件;

  • Generic Webhook Trigger
  • Publish Over SSH

如何安装插件

系统管理>插件管理>可选插件
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在可选插件里面搜索,需要的插件然后直接安装,完美,默默的等待它安装完成,就可以使用了。

如何构建项目

新建项目>输入任务名称+选择‘构建一个自由风格的软件项目’
在这里插入图片描述
在这里插入图片描述

构建项目

之前的预热都做好了,现在开始进入正题;
前面的选项可以不填,直接在构建触发器这里选择 Generic Webhook Trigger
首先,我先介绍下Generic Webhook Trigger的每个选项里面的意思
(抄录地址:https://www.gaoyaxuan.net/blog/462.html)

Post content parameters:

这类变量从 POST 的具体内容中获取,格式支持JSON/XPATH,具体为:

  • Variable:是变量名
  • Expression:是变量的获取方式
  • Value filter:需要过滤的变量内容,一般不填
  • Default value:变量默认值,一般不填
    其中,如果将 Expression 中设置为 $.a.b.c,即可获取到出下面 JSON 中的“value”。
{"a":{"b":{"c":"value"}}
}
Header parameters:

这类变量从 Header 中获取,具体为:

  • Request header:变量名即参数名
  • Value filter:需要过滤的变量内容,一般不填
    需要注意的是,获取到的变量名是小写字母的形式,且将会用 ‘_’ 字符代替‘-’字符。
Request parameters:

这类变量从 URL 的 Request 参数中获取,具体为:

  • Request parameter:变量名即参数名
  • Value filter:需要过滤的变量内容,一般不填
Token:

标识唯一性,只有和gogs中配置的token一致才能成功触发.
如果多个项目的此参数值一样,都会被触发。

打印内容:

提供了三个供日调试打印日志的参数

  • Silent response 当为true,只返回http 200 状态码,不返回触发结果
  • Print post content将 webhook 请求的内容打印到日志上
  • Print contributed variables 将 提取后的变量打印到日志上
如何对 Webhook 进行过滤:

Generic Webhook TriggerOptional filter 部分即可配置过滤策略。其中:

  • Expression:设置过滤(通过)的条件,通过正则方式进行判断
  • Text:带过滤的文本内容,可以使用系统变量(上一部中获取了很多系统变量就可以在这里使用)

正片来了

1.在系统管理中的系统管理Publish over SSH添加服务器配置
在这里插入图片描述
Publish over SSH配置
在这里插入图片描述

  1. Generic Webhook Trigger里面的Post content parameters参数中,填写Variable变量名,Expression需要在git返回中读取的Json串对应的参数。
    在这里插入图片描述
    3.在token参数中自定义输入,这个地方在gogs中webhoos钩子中能用到。

在这里插入图片描述
4 在Optional filter中输入正则,选择ref头部分支,判断是否启动;
在这里插入图片描述
5.选择服务器,并填写shell脚本语句;
在这里插入图片描述

这些配置好后,现在我们进入gogs中去配送webhooks;
1.进入gogs,选择仓库设置;中管理Web钩子
在这里插入图片描述
2. 在推送地址中写入钩子的地址
地址格式:
http://<jenkins地址:端口号>/generic-webhook-trigger/invoke?token=<密钥>
密钥就是在Generic Webhook Trigger中token中设置的值;
在这里插入图片描述
3. 其他的都设置好,保存,然后在钩子中单独测试。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200919163216119.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1RpYW5Lb25nRGVUYW5nR3Vv,size_16,color_FFFFFF,t_70#pic_center
5.发送成功后,在Jekins项目中看看是否运行。

在这里插入图片描述

在这里插入图片描述
如果项目正常运行了,证明项目运行了起来。

完毕~~

这篇关于Jekins+Generic Webhook Trigger插件[gogs],发布前端任务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

React 记忆缓存的三种方法实现

《React记忆缓存的三种方法实现》本文主要介绍了React记忆缓存的三种方法实现,包含React.memo、useMemo、useCallback,用于避免不必要的组件重渲染和计算,感兴趣的可以... 目录1. React.memo2. useMemo3. useCallback使用场景与注意事项在 Re

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

Java实现将HTML文件与字符串转换为图片

《Java实现将HTML文件与字符串转换为图片》在Java开发中,我们经常会遇到将HTML内容转换为图片的需求,本文小编就来和大家详细讲讲如何使用FreeSpire.DocforJava库来实现这一功... 目录前言核心实现:html 转图片完整代码场景 1:转换本地 HTML 文件为图片场景 2:转换 H

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

修复已被利用的高危漏洞! macOS Sequoia 15.6.1发布

《修复已被利用的高危漏洞!macOSSequoia15.6.1发布》苹果公司于今日发布了macOSSequoia15.6.1更新,这是去年9月推出的macOSSequoia操作... MACOS Sequoia 15.6.1 正式发布!此次更新修复了一个已被黑客利用的严重安全漏洞,并解决了部分中文用户反馈的

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优