Gerrit Code Review 服务搭建

作者:Rui 发布时间:October 23, 2015 分类:JAVA,ANDROID 浏览:1,118

简介

Gerrit一种免费、开放源代码的代码审查和项目管理软件,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改,原先是为了管理Android计划而产生的,现在已成为很多开源项目的Code Review工具

下载

源码地址:https://gerrit.googlesource.com, gerrit的源码和相关插件的源码地址
https://gerrit.googlesource.com/gerrit 这个是gerrit的源码

我们可以直接下载已经打包的好的可执行安装包
http://gerrit-releases.storage.googleapis.com/index.html
选择一个合适的版本下载即可

安装

环境要求

  • JDK runtime 1.7 +
  • MySQL or PostgreSQL

配置 Java Strong Cryptography

为了支持超强密码加密:AES128CTR, AES256CTR, ARCFOUR256和ARCFOUR128,需要从Oracle 官网下载安装Java Cryptography Extension (JCE)

注意:安装JCE并不是必须的

  1. 下载JCE lib
    JDK7 JCE policy files
    JDK8 JCE policy files
  2. 解压缩JCE
    下载的文件里包含一下文件
    README.txt Information about JCE and installation guide
    local_policy.jar Unlimited strength local policy file
    US_export_policy.jar Unlimited strength US export policy file
  3. 依照README 安装JCE

数据库配置

MySQL

CREATE USER 'gerrit2'@'localhost' IDENTIFIED BY 'secret';
CREATE DATABASE reviewdb;
GRANT ALL ON reviewdb.* TO 'gerrit2'@'localhost';
FLUSH PRIVILEGES;

初始化配置

sudo adduser gerrit2
sudo su gerrit2

java -jar gerrit.war init -d /path/to/your/review_site

一路回车,之后在修改gerrit 配置文件,配置文件路径:review_site/etc/gerrit.conf

vim review_site/etc/gerrit.config
[gerrit]
    basePath = repositories
    canonicalWebUrl = http://localhost/r/
[database]
    type = mysql
    hostname = localhost
    database = reviewdb
    username = gerrit2
[index]
    type = LUCENE
[auth]
    type = HTTP
[sendemail]
    smtpServer = smtp.126.com
    smtpServerPort = 25
    smtpUser = abc@126.com
    smtpPass = email_pass
    from=HUDSON(Code Reviewer)[abc@126.com]  
[container]
    user = gerrit2
    javaHome = /usr/lib/jvm/java-7-openjdk-amd64/jre
[sshd]
    listenAddress = *:29418
[httpd]
    listenUrl = proxy-http://*:8081/r/   --- 使用HTTP代理
[cache]
    directory = cache

启动/关闭gerrit

review_site/bin/gerrit.sh start
review_site/bin/gerrit.sh stop
review_site/bin/gerrit.sh restart

配置开机自动启动

  • 取消gerrit.sh 以下代码注释
chkconfig: 3 99 99
description: Gerrit Code Review
processname: gerrit
  • 软链接启动文件
sudo ln -snf `pwd`/review_site/bin/gerrit.sh /etc/init.d/gerrit
sudo ln -snf /etc/init.d/gerrit /etc/rc3.d/S90gerrit

安装Apache并配置

  1. 安装Apache
sudo apt-get install --reinstall apache2  apache2.2-common
  1. 配置
  • 启用Apache Proxy
a2enmod proxy_http
  • 生成HTTP Auth password 文件
htpasswd -cb review-site/etc/passwords admin admin
  • 配置Apache
<VirtualHost *:80>
    ServerName localhost
    ServerAdmin webmaster@localhost
    
    DocumentRoot /var/www

    ProxyRequests Off
    ProxyVia Off
    ProxyPreserveHost On

    <Proxy *>
      Order deny,allow
      Allow from all
    </Proxy>

    <Location "/r/login/">
      AuthType Basic
      AuthName "Gerrit Code Review"
      Require valid-user
      AuthUserFile /home/gerrit2/review-site/etc/passwords 
    </Location>

    AllowEncodedSlashes On
    RedirectMatch  ^/r$ /r/
    ProxyPass /r/ http://127.0.0.1:8081/r/ nocanon
    ProxyPassReverse /r/ http://127.0.0.1:8081/r/
</VirtualHost>

  1. 启动Apache
sudo service apache2 restart

访问Gerrit

访问http://localhost/r/ 登录admin 账户后,gerrit将自动将第一个用户加为管理员

status-open.jpg

标签: none

添加新评论 »