一、需求:
本地push代码到Gogs后,Jenkins自动触发构建任务
二、需要安装的软件
CentOS系统需安装MySQL、部署Tomcat以及jenkins、安装Gogs、Git(版本需 >= 1.7.1),
本地Window系统或Mac系统需安装Git、SourceTree。
三、具体操作详解(只介绍Gogs的安装方法,其他请自动百度安装)
1.下载Gogs对应的安装包Gogs下载
wget https://dl.gogs.io/0.11.79/gogs_0.11.86_linux_amd64.tar.gz
2.下载完成后用tar -xzvf 解压
tar -xzvf gogs_0.11.86_linux_amd64.tar.gz
3.解压完成后进入到gogs文件下修改配置文件
cd gogs
vi ./scripts/init/debian/gogs
配置文件内容如下
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Gogs"
NAME=gogs
SERVICEVERBOSE=yes
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
WORKINGDIR=/usr/local/software/gogs # 根据自己存放的目录修改
DAEMON=$WORKINGDIR/$NAME
DAEMON_ARGS="web"
USER=root # 如果运行Gogs不是用的这个用户,修改对应用户,比如我是用root用户运行Gogs的修改为root即可
修改完成后命令行模式输入:wq保存退出
4.配置数据库
# 创建Gogs数据库
create database gogs;
# 创建Gogs数据库用户
create user 'gogs'@'localhost' identified by '填写密码';
grant all privileges on gogs.* to 'gogs'@'localhost';
flush privileges;
5.启动Gogs
进入Gogs所在的目录下执行命令
./gogs web
能看到启动信息后,在Window打开网址http://IP:3000/install(IP为CentOS服务器的IP),进入安装页面,填写信息后,完成安装,记住第一个注册的用户为管理员用户;
至此,Gogs已安装完成了
6.在Jenkins安装Gogs插件,安装完成之后需要重启Jenkins才生效
7.Gogs仓库配置
进入对应的仓库配置中,添加Web钩子
填写推送地址格式为
http(s)://<< jenkins-server >>/gogs-webhook/?job=<< jobname >>
jenkins-server即为jenkins访问地址
jobname为项目名称(记住项目名称一定要英文)
数据格式默认的application/json就行
填写信息完成后,可以点击测试推送看看是否成功,如出现绿色勾号,说明能连接到Jenkins
至此,一切都部署完成了
这样当在Window系统用SourceTree中push代码到Gogs时,Jenkins就会自动创建任务了