GERRIT + JENKINS
背景
当前团队使用Gerrit来做代码管理、CodeReview。计划实现当review提交到了Gerrit并且review通过(merged)自动触发Jenkins流水线。以前接触Gitlab比较多,Gerrit还是第一次开始用,踩了点坑记录下来。本文主要讲述Gerrit Trigger流水线配置,关于服务器配置等细节问题暂不研究,降低复杂性。
Gerrit 配置
我们可以通过Docker的方式快速启动一个Gerrit实例,默认Gerrit使用的是HTTP 8080端口、SSH29418端口。通过CANONICAL_WEB_URL参数指定服务器网页地址。
docker run --name gerrit -itd -p 8088:8080 -p 29418:29418 -e CANONICAL_WEB_URL=http://192.168.1.200:8088 gerritcodereview/gerrit
启动成功后,默认打开的是一个插件安装的页面,此时可以根据个人需要安装相关插件,也可以跳过。
默认登录就是admin, 创建一个Jenkins用户。
登录Jenkins用户然后配置SSH-KEY,创建ssh-key添加到jenkins用户配置中。
[root@zeyang-nuc-service ~]# kubectl exec -it jenkins-6ccf555769-sfdw6 -n devops bashbash-4.2$ iduid=1000(jenkins) gid=1000(jenkins) groups=1000(jenkins)bash-4.2$ ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/var/jenkins_home/.ssh/id_rsa):Created directory '/var/jenkins_home/.ssh'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /var/je