设为首页 收藏本站
查看: 447|回复: 0

[经验分享] 最新apache+svn+reviewboard实现在线代码评审

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-31 09:36:01 | 显示全部楼层 |阅读模式
本文重点说reviewboard的安装
作用,在线代码评审工具。
---------------------------------------------------------------------------
mysql安装
yum -y install gcc gcc-c++ make cmake autoconf automake ncurses* bison* zlib* expat*
openssl* apr* neon*
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/下,不需要软连。
* What database type will you be using?
  You can type either the name or the number from the list below.

  (1) sqlite3 (not supported for production use)

  Database Type: 1

对于编译安装的mysql,解决办法如下 做相应的软连接
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
ln -s /usr/local/mysql/bin/* /usr/local/bin/
mysql安装此处不再介绍 编译也好,yum也好,看需求及使用mysql的级别。
----------------------------------------------------------------------------
Apache和SVN
yum -y install httpd httpd-devel  mod_dav_svn  subversion subversion-devel
apache 安装好之后可直接启动
svn 的安装于配置,仓库的创建,用户的管理,权限的配置,网上文档一大堆。
----------------------------------------------------------------------------
安装reviewboard
reviewboard是有python开发,使用python-setuptools安装
1,yum -y install python-setuptools
easy_install -U setuptools,
2,安装python组件
yum -y install python python-devel python版本要2.6以上才可以支持reviewboard
3、 安装patch
yum -y install patch
4、 安装pysvn
wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.6.tar.gz
tar zxvf pysvn-1.7.6.tar.gz
cd pysvn-1.7.6/Source
python setup.py backport 验证与python的兼容
python setup.py configure
make pysvn的编译安装需要subversion-devel的支持,没有装devel报此处报错,yum安装之后将解

决。
mkdir /usr/lib64/python2.6/site-packages/pysvn
cp pysvn/__init__.py /usr/lib64/python2.6/site-packages/pysvn
cp pysvn/_pysvn*.so /usr/lib64/python2.6/site-packages/pysvn
5、 安装mod_wsgi
yum -y install mod_wsgi 是支持webpy的一个模块
6、 安装mencache
yum -y install memcached
easy_install python-memcached reviewboard需要memcxched的支持,之前没打开11211端口,访

问很慢。
7、 安装Review Board
easy_install ReviewBoard
# 如果安装过程中 Django 1.6.5一直因为网络问题安装失败的话,可以手动下载安装 伟大的天朝

已经屏蔽的google,此处提供一个openerdns 42.120.21.30 添加到/etc/resolv.cof 里。成功的

几率大大提高,以为此dns可以代理到google,https://code.google.com/p/openerdns/
wget https://pypi.python.org/packages/source/D/Django/Django-

1.6.5.tar.gz#md5=e4c5b2d35ecb3807317713afa70a0c77
cd Django-1.6.5
python setup.py build
python setup.py install
# 或者使用pip在线安装
pip --default-timeout=2000 install Django==1.6.5
8、 安装mysql组件
easy_install mysql-python
创建reviewboard站点
创建reviewboard存放数据的数据库reviewboard并赋予权限和密码
mysql> create database reviewboard default charset utf8 collate utf8_general_ci;
mysql> grant all on reviewboard.* to 'reviewboard'@'localhost' identified by

'reviewboard';
mysql> FLUSH PRIVILEGES;
创建reviewboard站点
rb-site install /reviewboard  rb-site命令是装reviewboard自动生成的
之后会有一系列类似安装向导的步骤,需要你做出选择,尽量选择默认值吧
     Domain = rb.XXX.com 自己随意,本地做个hosts绑定就行
     Root Path = 回车
     Database Type = mysql
     Database Name = reviewboard
     Database server = 回车
     Database username = 'reviewboard'
     Database password = 'reviewboard'
     Memcache Server = 回车
      Username [admin]: admin
     E-Mail Address = 邮箱自己填

ok之后需要修改下列文件的属主属组
[iyunv@localhost bin]# chown -R apache /reviewboard/htdocs/media/uploaded
[iyunv@localhost bin]# chown -R apache /reviewboard/htdocs/media/ext
[iyunv@localhost bin]# chown -R apache /reviewboard/htdocs/static/ext
[iyunv@localhost bin]# chown -R apache /reviewboard/data/
cp /reviewboard/conf/apache-wsgi.conf  到/etc/httpd/conf.d/  apache为yum安装,编译安装

自己定位目录。80端口被占用,我使用了8081 修改了下端口,使用80端口将不用任何修改。
重启apache,http://http://rb.xxx.com/ 就可以访问。
QQ截图20140731093349.jpg
如果出现400错误,就是在创建reviewboard站点出现错误,站点没有生成好,之前就是没有显示mysql选择了sqlite3,也ok了,访问就是显示400错误,以为是apache-wsgi.conf中

WSGIPassAuthorization On
WSGIScriptAlias "/" "/reviewboard/htdocs/reviewboard.wsgi/" 这两行的问题,写了个html,试验了虚拟主机,注释这两行就ok,打开就400, 查了半天的mode_wsgi,还是400,最终又重新检查一遍,支持了mysql,终于解决。
500错误解决有可能是数据库的问题,重启数据库(慎重)或者drop reviewboard库重新创建,并重新生成reviewboard站点。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-22996-1-1.html 上篇帖子: Centos通过PXE自动化安装 下篇帖子: 使用SecueCRT在本地主机与远程主机之间交互文件 在线代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表