CodeReview实践-Gerrit自动触发JenkinsCI

本文介绍了如何将Gerrit与Jenkins集成,以便在Gerrit代码审查通过后自动触发Jenkins流水线。主要内容包括Gerrit的Docker配置、Jenkins用户设置、SSH-KEY配置、权限设置以及Jenkins中Gerrit Hook插件的安装和配置。通过这种集成,可以确保每次提交的代码和Jenkinsfile都经过CodeReview。
摘要由CSDN通过智能技术生成



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 bash
bash-4.2$ id
uid=1000(jenkins) gid=1000(jenkins) groups=1000(jenkins)
bash-4.2$ ssh-keygen
Generating 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/jenkins_home/.ssh/id_rsa.
Your public key has been saved in /var/jenkins_home/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:nGqkSVAUuc2xrGe8Bz/xuWcQ/YVrDISPJux+tCZkJgI jenkins@jenkins-6ccf555769-sfdw6
The key's randomart image is:
+---[RSA 2048]----+
|   .+o     .     |
|   .. .   . .    |
|  .  = +   =   . |
|  E.. =.o.+ + . .|
|   ..o..So . + o |
|   .o+*.* o   =  |
|    o+oX 
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值