まだ使い方はよくわかっていませんがww
インストールの方法は、本家サイトのAdministration Guideに書いてあります。
インストールメモ
環境は以下でやりました。
OS : VMWare上のDebian
DB : MySQL
WebServer : lighttpd
また、別の環境でUbuntuにも同じ手順でインストールしてみたが上手く動いている様子。
VMWareにDebianをインストール。
インストール後、scsiが認識できない的なメッセージが出て起動しない問題が発生。
.vmxファイルに、以下を追加することで起動できるようになった。
scsi0.virtualDev = "lsilogic"
apt-getを更新
$ sudo apt-get update
$ sudo apt-get upgrade
Python,setuptoolのインストール
$ sudo apt-get install python-setuptools
$ sudo easy_install -U setuptools
$ sudo apt-get install python-dev
後にnose, Sphinxをインストールする時に、python-devってのがいるみたいです。
python-devを入れていないと以下のエラーがでちゃいます。
jinja2/_speedups.c:58: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
jinja2/_speedups.c:120: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
memcachedのインストール
$ sudo apt-get install memcached
$ sudo apt-get install libmemcache-dev
$ sudo easy_install http://gijsbert.org/downloads/cmemcache/cmemcache-0.95.tar.bz2
パッチのインストール
$ sudo apt-get install patch
ReviewBoardのインストール
$ sudo easy_install ReviewBoard
MySQLのインストール
ReviewBoard用のDB,ユーザ/パスワードを作成しておきます。
必要なTable類は、ReviewBoardのSite作成時に作ってくれるので気にしなくてOK.
$ sudo apt-get install MySQL-server
$ sudo easy_install mysql-python
$ sudo apt-get install python-mysqldb
Database,ユーザの作成
$ mysql -u root -p
mysql> create database reviewboard character set utf8;
mysql> grant create, select, insert, update, delete, alter, lock tables on reviewboard.* to 'reviewboard'@'localhost' identified by 'reviewboard';
mysql> flush privileges;
Subversionのインストール
$ sudo apt-get install subversion python-svn
nose,Sphinxのインストール
$ sudo easy_install nose Sphinx
lighttpdのインストール。
ReviewBoardではFastCGIっつーのを使っているんですが、lighttpdだと、Apache + mod_python or fastcgiよりも早いとか。
$ sudo apt-get install lighttpd
Configの設定はまた後で。
ReviewBoadのサイトを作成
$ sudo rb-site install /var/www/reviews.example.com
/var/www/reviews.example.comの所には、作成したいパスを設定します。
上記のコマンドを実行すると、DBの種類や、DBユーザ/パスワード、WebServerの種類などが聞かれますので、ちゃんと用意して望みましょう〜
権限の変更
作成したサイトのフォルダの権限を変更します。
$ sudo chown -R www-data /var/www/reviews.example.com/htdocs/media/uploaded
$ sudo chown -R www-data /var/www/reviews.example.com/logs
[www-data]っていうのは、lighttpdを実行するユーザ名です。
この設定は、/etc/lighttpd/lighttpd.conf にあります。
lighttpdのConfig設定
作成したサイトに conf/lighttpd.conf があります。このファイル中身はReviewBoardが実行できるような設定が書かれていて、既存のlighttpd.confに追加する形で使用できるようになっています。なので、/etc/lighttpd/lighttpd.confの最後にコピペするか、includeするとかで追加すればOK。
今回の場合は、includeしてくれ!と言わんばかりの構成を作ってくれているので、includeしてみました。
includeするファイルは、 /etc/lighttpd からの相対パスで判断されるので、
$ sudo cp /var/www/reviews.example.com/conf/lighttpd.conf /etc/lighttpd/reviews.example.com.conf
reviews.example.com.confってファイル名でコピー。
$ sudo vi /etc/lighttpd/lighttpd.conf
でconfigを開いて一番最後の行に
include "reviews.example.com.conf"
を追加。
これで、見直すのはコピーしたConfig(reviews.example.com.conf)のみでOKになります。
コピーしたコンフィグに書かれている、
$HTTP["host"] =~ ".........." {
は、ホスト名指定のバーチャルホストの設定とのこと。
今回は、とりあえず試しに入れてみた&他の端末からも見たい ような状況だったので、IP+ポートの指定で変更しました。
$HTTP["host"] =~ ".........." {
↓
$SERVER["socket"] == "192.168.1.1:81" {
lighttpdの再起動
$ sudo /etc/init.d/lighttpd restart
これで無事にみれた。
ここまでやるのに、結構もたついてしまいました。。
こうやって書くと、何に時間くってたんだろう?って思ってしまうけどね〜
こんな事をしていたら、「Rietveldが自由に使える所あったやろ?」という話になり、探してみたらRietveld Code Review Tool
という所を発見。
自由にSubversionとかのリポジトリを登録して、レビューが出来るような所なのか?!
オープンソースのものだったら、ここで直ぐに使えそうですねー。
RietveldはGAEにものるそうで、セットアップも簡単らしい。 Google謹製 ソースコードレビューシステム rietveld(オープンソース版 Mondrian)を動かしてみましょう
やっぱ、セットアップ簡単じゃないとねー!
んでもってこれからは、
セットアップ無し。既にインスタンスされているサーバーを直ぐに使える。
って環境をどんどん作って欲しいもんです。
あと...コードレビューに限らず色んなサービスについて...
有料なら有料でいいけど、個人として試してみやすい料金体系にしてほしいですねー。
個人だからこそセットアップに手間をかけたくない!