配置gitlab gerrit jenkins

Posted juandx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置gitlab gerrit jenkins相关的知识,希望对你有一定的参考价值。

 

配置gerrit

在gerrit创建jenkins用户

把jenkins用户加入Non-Interactive的组中

  • Projects -> List -> All-Projects
  • Projects -> Access -> Edit -> 找到 Reference: refs/heads/* 项 -> Add Permission -> Label Verified-> Group Name 里输入 Non-Interactive Users -> 回车 或者 点击Add 按钮 -> 在最下面点击 Save Changes 保存更改

 

配置gitlab和gerrit

先在gitlab创建一个project1

然后在gerrit上创建一个project1

ssh -p 29418 [email protected] gerrit create-project project1

这样就在gerrit页面可以看到project1这个,当然也可以直接在页面创建,这样会在默认的git目录下看到project1.git这个文件

然后删除掉这个project1.git

从gitlab上clone这个project1的bare到相同位置,取代gerrit的

git clone --bare [email protected]:dev-group/test-project1.git

然后把admin(gerrit的)的public 可以上传到gitlab

克隆一个项目,添加一个.gitreview文件,然后push到项目中,内容为:

[gerrit]
host=gerrit.wenbin.com
port=29418
project=project1.git

 

在gerrit的安装目录,我的是review_init下的etc下创建replication.config

[remote "project1"]
  # Gerrit project1      
  projects = project1
  url = [email protected]:group/project1.git
  push = +refs/heads/*:refs/heads/*
  push = +refs/tags/*:refs/tags/*
  push = +refs/changes/*:refs/changes/*
  threads = 3

然后重启gerrit

这样提交到gerrit后,review后会自动同步到gitlab那里。

 

配置jenkins和gerrit

htpasswd /htpasswds jenkins

把jenkins用户需要用的.ssh(gerrit的admin用户的.ssh ,public key要放到gerrit的页面)放到jenkins的用户目录下(/var/lib/jenkins/),因为jenkins要拿代码。

 

jenkins 安装gerrit trigger,ssh over publish插件

配置应该是小事了,jenkins如果添加工程自动trigger gerrit的时候设置稍微麻烦点,其实就是

  et Refspec to refs/changes/*:refs/changes/* and ‘Branches to build‘ to $GERRIT_REFSPEC

 

参考

http://blog.csdn.net/stwstw0123/article/details/47615535

 

以上是关于配置gitlab gerrit jenkins的主要内容,如果未能解决你的问题,请参考以下文章

持续集成环境搭建Jenkins+Gitlab+Gerrit

持续集成环境搭建Jenkins+Gitlab+Gerrit

《持续集成实践指南》第2章 持续集成环境搭建Jenkins+Gitlab+Gerrit

jenkins实现项目自动部署

Gitlab+Gerrit+Ldap+nginx+mysql 之Gerrit搭建与配置

gitlab