Apache+SVN+Review Board代码审核服务器搭建流程
本博文基于原创 四京 (http://blog.51cto.com/12676522/1929856?utm_source=oschina-app)更新修改。
一、简介代码审查(CodeReview)不但可以提高质量,而且还是一个知识共享和指导的极好的手段。ReviewBoard是一款比较优秀的,开源的基于WEB的代码审查工具。
二、准备工作
2.1、安装依赖包
1 | yum -y install gcc gcc-c++ make cmake autoconfautomake libffi libffi-devel ncurses* bison* zlib* expat* openssl* apr* neon* bzip2-devel |
2.2、安装Apache
1 | yum -y install httpd httpd-devel |
2.3、安装MySQL
1 2 | yum -y install mysql mysql-server mysql-devel MySQL-python
|
登录MySQL创建reviewboard数据库和reviewboard用户
1 2 3 | mysql –uroot –p >create database reviewboard default charset utf8 collate utf8_general_ci; >grant all on reviewboard.* to 'reviewboard' @ 'localhost' identified by 'reviewboard' ; |
2.4、安装memcached
1 2 | yum -y install memcached python-memcached
|
2.5、安装patch
1 | yum -y install patch |
2.6、安装Python
1 |
reviewBoard 3.0以上要求python 2.7以上版本 升级Python wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tar.xz tar xvf Python-2.7.14.tar.xz cd Python-2.7.14 ./configure --enable-shared --prefix=/usr/local/python27 make && make install vi /etc/ld.so.conf //加入/usr/local/python27/lib rm /usr/bin/python ln -s /usr/local/python27/bin/python2.7 /usr/bin/python cp /usr/lib64/python2.6/lib-dynload/bz2.so /usr/local/lib/python2.7 |
2.7、安装python-subvertpy pysvn
如果python版本为2.6(CentOS6.x),可以采用EPEL yum源进行下载
1 2 3 | (1)、 rpm -ivh http: //dl .fedoraproject.org /pub/epel/6/x86_64/epel-release-6-8 .noarch.rpm yum -y install python-subvertpy pysvn |
(安装yum源EPEL红帽企业库,centos默认yum源库中没有pysvn)
1 2 | (2)、 yum --enablerepo=epel install pysvnpython-subvertpy |
(指定在EPEL yum源中,下载pysvn,python-subvertpy)
CentOS7.x 安装EPEL源
1 |
|
3.1、安装easy_install
distribute从0.7版本后就和setuptools合并在一起了,所以先删除旧版(setuptools)easy_install。
第一步:删除easy_install
1 2 | rm -f /usr/bin/easy_install * rm -f /usr/local/bin/easy_install * |
第二步:安装distribute
1 2 3 |
vi distribute_setup.py //将DEFAULT_URL中的"http" 改为"https" python distribute_setup.py install
|
3.2、安装PIP
1 2 | tar xvf pip-9.0.1.tar.gz && cd pip-9.0.1 |
python setup.py install |
3.3、安装ReviewBoard
1 2 | pip install reviewboard pip install mysql-python ln -s /usr/local/python27/bin/rb-site /usr/bin/rb-site
|
根据情况配置以下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Domain Name: 192.168.1.1 Root Path [/]: Database Type: mysql Database Name [reviewboard]: Database Server [localhost]: Database Username: reviewboard Database Password: Confirm Database Password: Memcache Server [localhost:11211]: Username [admin]: admin Password: Confirm Password: E-Mail Address: admin@domain.com Company /Organization Name (optional): domain Allow us to collect support data? [Y /n ]: |
3.3、配置reviewboard目录权限
1 2 | chown -R apache.apache /var/www/html/reviewboard/htdocs/ chown -R apache.apache /var/www/html/reviewboard/data |
3.4、配置reviewboard
把apache-wsgi.conf配置文件放到Apache的conf.d目录下
1 |
|
配置允许访问reviewboard的域名或IP
vi /var/www/html/reviewboard/conf/settings_local.py
1 |
|
重启Apache
1 | service httpd restart |
输入刚才配置的admin密码
4.1、进入管理员后台
4.2、配置发送邮件
4.3、配置审核代码仓库
输入名称,SVN仓库地址,用户名密码。
4.4、添加用户