Ubuntu虚拟机下搭建reviewboard服务器

Ubuntu虚拟机下安装reviewboard

参考许多资料以及实际操作后,写下如下较为完整的reviewboard安装过程。

1.安装virtualbox

2.新建64位Ubuntu系统,并安装Ubuntu系统,注意,不要勾选下载时更新选项,否则会安装失败。

3.安装Python setuptools

  sudo apt-get install python-setuptools

4.安装Python development headers

  sudo apt-get install python-dev

5.安装Apache2和mod_python

  sudo apt-get install apache2 libapache2-mod-python

  sudo a2enmod python

6.安装memcached

  sudo apt-get install memcached

  sudo easy_install python-memcached

7.安装patch

  sudo apt-get install patch

8.安装mysql

  sudo easy_install mysql-python

  sudo apt-get install python-mysqldb

  (sudo apt-get install mysql-server python-mysqldb libmemcache-dev)

9.在命令行模式进入MySQL,敲入status命令检查字符集:

  Server characterset:    latin1

  Db    characterset:    latin1

  Client characterset:    latin1

  characterset:    latin1

10.停止MySQL Server(sudo /etc/init.d/mysqlstop),打开/etc/mysql/my.cnf,添加[client] default-character-set=utf8,添加[mysqld] character-set-server = utf8

11.由于版本不同,默认情况为:

  Server characterset:    latin1

  Db    characterset:    latin1

  Client characterset:    utf8

  characterset:    utf8

  则只添加[mysqld] character-set-server = utf8

12.重新启动mysql,启动成功,查看下结果是:

  Server characterset:    utf8

  Db    characterset:    utf8

  Client characterset:    utf8

  characterset:    utf8,代表测试成功。

13.创建数据库,用root用户登录:mysql -u root –p

  mysql> create database reviewboard;       /*注意一定要打分号*/

  Query OK, 1 row affected (0.00 sec)

  mysql> create user 'reviewboard'@'localhost' identified by 'reviewboard';  /* 前一个reviewboard是访问数据库的用户名,后一个reviewboard是密码 */

  Query OK, 0 rows affected (0.00 sec)

  mysql> grant all on reviewboard.* to 'reviewboard'@'localhost';  /* 前一个reviewboard是数据库的名字,而后一个reviewboard则是访问数据库的用户名 */

  Query OK, 0 rows affected (0.00 sec)

  mysql> exit

14.安装SVN

  sudo apt-get install python-subvertpy

  sudo apt-get install subversion python-svn

15.如果SVN版本过低,需要将SVN升到1.7:

  sudo apt-get install patch subversion python-svn

  sudo apt-get remove subversion

  sudo apt-add-repository ppa:dominik-stadler/subversion-1.7

  apt-get install python-software-properties

  apt-get software-properties-common

  svn –version(验证版本)

16.安装reviewboard,新版本在建站会有问题,所以使用1.7.25版本。先在官网下载1.7.25的egg包,网址:http://downloads.reviewboard.org/releases/ReviewBoard/1.7/,使用easy_install 安装egg包,安装过程中会失败几次,重复几次就可以了。

17.创建reviewboard站点:sudo rb-site install /var/www/reviewboard。

  Domain = localhost

  Root Path = /

  Media URL = media/

  Database Type = mysql

  Database Name = reviewboard

  Database server = localhost

  Database username = root

  Database password = 123456

  Cache Type = memcache

  Memcache Server = localhost:11211

  Webserver = apache

  Python loader = modpython注意,在建站是会提示modpython不再更新了,推荐wsgi,但是还是要选modpython,否则与Apache不匹配,导致LSB启动失败。

如下图所示,表示建站成功:

 

18.修改目录权限:

  sudo chown –R www-data /var/www/reivewboard/htdocs/media/uploaded

  sudo chown –R www-data /var/www/reviewboard/htdocs/media/ext

  sudo chown –R www-data /var/www/reviewboard/data

19.配置站点,启动Apache。

  cd /etc/apache2/sites-available

  sudo cp /var/www/reviewboad/conf/apache-modpython.conf /etc/apache2/sites-available/reviewboard.conf

  cd ../sites-enabled

  sudo a2ensite reviewboard.conf

  sudo /etc/init.d/apache2 restart

20.在浏览器中输入http://localhost:80,出现reviewboard界面,可以注册账号使用了。

 

21.使用建站时创立的admin账号登录,管理员登陆成功后右上角菜单会看到Admin链接,点击后进入管理页面。可以添加group以及user。

 

22.在admin下,点开database项,添加repositories(SCMTOOLS下),选择SVN,并填写SVN根目录。填写svn用户名和密码,点击保存。

 

23.采用pre-commit review模式,进入普通用户模式,使用svn客户端,生成patch文件。

24.登录reviewboard,新建review request,在base directory输入相对目录位置,即在svn输入的根目录下,patch文件目录前的部分目录,并上传patch文件。点击create review request,填写summary等信息。最后点击public提交。

25.指定的reviewer进行review,点击view Diff,查看修改的文件与仓库中的文件对比。如果有问题,可以点击具体的代码某行,会弹出一个绿色对话框,填写your comment,同时,如果需要则勾选open an issue,save。点击review,可以填写review的最终意见,并确定是否勾选ship it(意味着review 通过,同意提交。不同意提交的话就不要ship it)全部填写完成后,在上方会看到一个提示,选择publish 结束review工作。

 

26.提交review request的账号可以看到相应的review信息。点击closed->submitted,或者discard,关闭review request。完成一个request,记下review id。

27.在svn提交修改后的代码,填写message信息,message信息中必须包含以下格式的内容:review:12,此处的12即是前面提到的review request的id,然后点击ok,才能完成commit。只有当前面的review通过时才能commit成功。

28.Window下的浏览器要连接Ubuntu虚拟机,需要设置一下网卡。在oracle vm virtualbox管理器界面,选中搭建了reviewboard的虚拟机,点击设置。在网络选项中的连接方式,选择桥接网卡,使用主机的网卡。

29.在Ubuntu系统的终端下输入ifconfig -a,查看Ubuntu虚拟机的ip,该IP地址与网卡的IP地址在一个网段,设置完成。

30.在window下的浏览器中输入http://Ubuntu虚拟机ip/localhost则可进入reviewboard。输入http://Ubuntu虚拟机ip /account/login/就可以看到登录界面了。

31.在登录界面下可以自行创建普通账户,进行code review。

posted @ 2015-10-27 15:08  HelloWorld_5  阅读(2060)  评论(0编辑  收藏  举报