开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第26天,点击查看活动详情
Gogs配置jenkins自动发版
介绍
gogs是一款开源、易安装、跨平台、轻量级的Git服务,使用go语言开发,支持Linux、Mac OS X、Windows、ARM平台。目前GitHub上开源的一款软件Gitea是基于Gogs,Gitea是从Gogs发展而来,支持的功能更多。Jenkins是一款开源软件,基于Java开发的一种持续集成工具,能够持续的软件版本发布/测试项目,监控外部调用执行的工作。本文讲解的是jenkins使用Generic Webhook Trigger进行持续集成发版,注意, 不是Gogs webhook,但是可以和Gogs webhook进行搭配使用。
安装
- 我们需要在jenkins的插件管理里面搜索Generic Webhook Trigger进行安装
- 如果插件管理无法安装,一直安装失败,可以去官网进行下载,下载完成之后上传进行安装
jenkins目前配置
目前在项目配置中使用了Gogs webhook中的Git Parameter参数进行分支的区分,这样在每次构建时都需要选择一下分支,默认是origin/master分支
jenkins Generic Webhook Trigger配置
-
启用Generic Webhook Trigger
-
配置刚刚的变量,将刚刚配置的branch变量填在此处
这个里面的$.ref是使用webhook里面的变量,在gogs的webhook的post里面,这个发送的json数据我们可以在gogs或者gitea中的管理web钩子菜单中新建一个web钩子,并且点击测试推送,即可看到测试的推送数据。
-
如果想过滤某个分支,可以使用正则表达式进行过滤
注意:需要使用上方的变量时,是$变量
配置gogs
配置路径
http://jenkins地址/generic-webhook-trigger/invoke?token=token值
token值是在jenkins中配置的值
此处分支过滤填写的事release-*,意思是之后release-xxx的分支会触发该webhook,例如release-1.0.0
测试
可以通过gogs的测试推送进行测试,此时查看Jenkins,即可看到Jenkins自动构建了。