• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

最新apache+svn+reviewboard实现在线代码评审

武飞扬头像
51CTO
帮助0

本文重点说reviewboard的安装

作用,在线代码评审工具。

---------------------------------------------------------------------------

mysql安装

  1. yum -y install gcc gcc-c make cmake autoconf automake ncurses* bison* zlib* expat*
  2. openssl* apr* neon*
  3. yum -y install mysql-server

可以选择yum安装mysql 或者编译安装mysql

注,编译安装的mysql,90%运维会装在/usr/local/mysql 下 如果默认安装在/usr/local/mysql下,等装好ReviewBoard生成站点的时候会选择支持使用的数据库的时候没有识别mysql只有sqlite3,此时,如果你数据库不是sqlite3,继续往下执行自动生成的站点访问将会出现bad reqest 400错误。对于编译安装的mysql,解决办法如下 yum安装的mysql命令将在/usr/local/bin/下,不需要软连。

对于编译安装的mysql,解决办法如下 做相应的软连接

  1. ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
  2. ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
  3. ln -s /usr/local/mysql/bin/* /usr/local/bin/

mysql安装此处不再介绍 编译也好,yum也好,看需求及使用mysql的级别。

----------------------------------------------------------------------------

Apache和SVN

  1. yum -y install httpd httpd-devel mod_dav_svn subversion subversion-devel

apache 安装好之后可直接启动

svn 的安装于配置,仓库的创建,用户的管理,权限的配置,网上文档一大堆。

----------------------------------------------------------------------------

安装reviewboard

reviewboard是由python开发,

1、使用python-setuptools安装

  1. yum -y install python-setuptools
  2. easy_install -U setuptools,

2、安装python组件

  1. yum -y install python python-devel python版本要2.6以上才可以支持reviewboard

3、 安装patch

  1. yum -y install patch

4、 安装pysvn

  1. wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz
  2. tar zxvf pysvn-1.7.6.tar.gz
  3. cd pysvn-1.7.6/Source
  4. python setup.py backport 验证与python的兼容
  5. python setup.py configure

make pysvn的编译安装需要subversion-devel的支持,没有装devel报此处报错,yum安装之后将解决。

  1. mkdir /usr/lib64/python2.6/site-packages/pysvn
  2. cp pysvn/__init__.py /usr/lib64/python2.6/site-packages/pysvn
  3. cp pysvn/_pysvn*.so /usr/lib64/python2.6/site-packages/pysvn

5、 安装mod_wsgi

  1. yum -y install mod_wsgi

mod_wsgi 是支持webpy的一个模块

6、 安装mencache

  1. yum -y install memcached
  2. easy_install python-memcached

reviewboard需要memcxched的支持,之前没打开11211端口,访问很慢。

7、 安装Review Board

  1. easy_install ReviewBoard

# 如果安装过程中 Django 1.6.5一直因为网络问题安装失败的话,可以手动下载安装 伟大的天朝已经屏蔽的谷歌,此处提供一个openerdns 42.120.21.30 添加到/etc/resolv.cof 里。成功的几率大大提高,以为此dns可以代理到谷歌,https://code.谷歌.com/p/openerdns/

  1. wget https://pypi.python.org/packages/source/D/Django/Django-1.6.5.tar.gz#md5=e4c5b2d35ecb3807317713afa70a0c77
  2. cd Django-1.6.5
  3. python setup.py build
  4. python setup.py install

# 或者使用pip在线安装

  1. pip --default-timeout=2000 install Django==1.6.5

8、 安装mysql组件

  1. easy_install mysql-python

创建reviewboard站点

创建reviewboard存放数据的数据库reviewboard并赋予权限和密码

  1. mysql> create database reviewboard default charset utf8 collate utf8_general_ci;
  2. mysql> grant all on reviewboard.* to 'reviewboard'@'localhost' identified by 'reviewboard';
  3. mysql> FLUSH PRIVILEGES;

创建reviewboard站点

  1. rb-site install /reviewboard

rb-site命令是装reviewboard自动生成的

之后会有一系列类似安装向导的步骤,需要你做出选择,尽量选择默认值吧

  1. Domain = rb.XXX.com 自己随意,本地做个hosts绑定就行
  2.  
  3. Root Path = 回车
  4.  
  5. Database Type = mysql
  6.  
  7. Database Name = reviewboard
  8.  
  9. Database server = 回车
  10.  
  11. Database username = 'reviewboard'
  12.  
  13. Database password = 'reviewboard'
  14.  
  15. Memcache Server = 回车
  16.  
  17. Username [admin]: admin
  18.  
  19. E-Mail Address = 邮箱自己填

ok之后需要修改下列文件的属主属组

  1. [root@localhost bin]# chown -R apache /reviewboard/htdocs/media/uploaded
  2. [root@localhost bin]# chown -R apache /reviewboard/htdocs/media/ext
  3. [root@localhost bin]# chown -R apache /reviewboard/htdocs/static/ext
  4. [root@localhost bin]# chown -R apache /reviewboard/data/
  5. cp /reviewboard/conf/apache-wsgi.conf 到/etc/httpd/conf.d/

apache为yum安装,编译安装

自己定位目录。80端口被占用,我使用了8081 修改了下端口,使用80端口将不用任何修改。

重启apache,http://http://rb.xxx.com/ 就可以访问。

学新通

如果出现400错误,就是在创建reviewboard站点出现错误,站点没有生成好,之前就是没有显示mysql选择了sqlite3,也ok了,访问就是显示400错误,以为是apache-wsgi.conf中

  1. WSGIPassAuthorization On
  2. WSGIScriptAlias "/" "/reviewboard/htdocs/reviewboard.wsgi/"

这两行的问题,写了个html,试验了虚拟主机,注释这两行就ok,打开就400, 查了半天的mode_wsgi,还是400,最终又重新检查一遍,支持了mysql,终于解决。

500错误解决有可能是数据库的问题,重启数据库(慎重)或者drop reviewboard库重新创建,并重新生成reviewboard站点。

博文链接:http://zhangxylinux.blog.51cto.com/5041623/1532964

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /news/detail/tanhbaegcj
系列文章
更多 icon
同类精品
更多 icon
继续加载