简介
Gogs 是一款类似GitHub的开源文件/代码管理系统(基于Git),Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
基于gogs代码管理系统,主要是开发后提交代码(可以为push、tag、合并等事件)可以直接触发jenkins的构建来完成编译部署。配置方法如下:
一、Jenkins中安装Gogs插件
首先jenkins需要进入系统管理>管理插件>可选插件安装Gogs插件。
此处安装了Generic Webhook Trigger插件的话,也可以不再单独安装Gogs插件,因为Webhook这个插件是通用的,详见Jenkins插件之-Generic Webhook Trigger
二、Jenkins任务中配置Gogs
在Jenkins打开任务配置界面,在Build Triggers处,勾选“Build when a change is pushed to Gogs”
三、Gogs中设置webhook(Web钩子)
登录gogs代码管理系统,进入仓库设置>管理Web钩子>添加Web钩子。
1、添加Web钩子
2、设置web钩子的详情
这里的推送地址是
http://<jenkins地址:端口号>/gogs-webhook/?job=<Jenkins任务名称>
触发web钩子的事件可以根据自己需要设置什么样的事件去触发jenkins的构建,此处勾选只推送push事件。
3、测试推送
添加完成之后,点击测试推送,推送成功会生成如下所示的测试记录:
点击测试记录可以看到发送给jenkins的推送详情了,其中ref就是推送过去的分支。
如此配置完成后,当有代码提交到gogs时,就会自动触发Jenkins中对应的任务。