Codestrikerのインストール方法
Perl製コードレビューWebシステムCodestrikerをインストールできたのでメモ。
但し、ReviewBoardに比べると、インストールははるかに難しかった。。
【元ネタ】
Perl製のソースコードレビューソフトウェア「Codestriker」
【必須環境】
以下、CentOS上で下記ツールはインストール済みとする。
Perl
Apache
下記のCPANライブラリ:
LWP::UserAgent(any)
CGI(v2.56)
Net::SMTP(any)
MIME::QuotedPrint(v2.14)
DBI(v1.13)
Template(v2.07)
HTML::Entities(any)
File::Temp(any)
XML::RSS(v1.05)
Encode::Byte(any)
Encode::Unicode(any)
DBD::mysql(any)
Authen::SASL(any)
上記のCPANを全てインストールするのがかなり面倒。。
ソースからインストールするよりも、yumやapt-getで入れた方が早いだろう。
【1】インストール方法
1.ソースを持ってくる。
tar zxvf codestriker-1.9.7.tar.gz
mv codestriker-1.9.7 codestriker
ln -s codestriker /var/www/cgi-bin/codestriker
2.MySQLへDB作成
mysql -u root
CREATE DATABASE codestrikerdb CHARACTER SET utf8;
GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,ALTER,CREATE,DROP,
REFERENCES ON codestrikerdb.* TO codestriker@localhost
IDENTIFIED BY 'codestriker';
FLUSH PRIVILEGES;
3.CodeStrikerの設定ファイル「codestriker.conf」を編集する。
14行目:
$db = 'DBI:mysql:dbname=codestrikerdb;host=localhost;
mysql_socket=/var/lib/mysql.sock';
28行目:
# Database user.
$dbuser = 'codestriker';
# Database password.
$dbpasswd = 'codestriker';
$admin_users = [ '管理者のメールアドレス' ];
・・・・・
104行目あたりから、連携するバージョン管理システムを設定する。
4.インストール実行。
Railsのように、MySQLへテーブルが作られる。
./bin/install.pl
足りないCPANライブラリはメッセージ表示される。
5.Apacheのhttpd.confへ下記を追加する。
CodestrikerはPerlなので、CGIの設定方法と同じ。
ScriptAlias /codestriker/ /var/www/cgi-bin/codestriker/cgi-bin/
Alias /codestriker/html/ /var/www/cgi-bin/codestriker/html/
<Directory "/var/www/cgi-bin/codestriker/cgi-bin/">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
SetHandler cgi-script
</Directory>
<Directory "/var/www/cgi-bin/codestriker/html/">
AllowOverride None
Allow from all
</Directory>
↓
Apacheを再起動後、
http://IPアドレス/codestriker/codestriker.pl
で表示可能!
【2】Webシステムとしての使い勝手、色合いなどのUIは、ReviewBoardの方がいいと思う。
しかしながら、Codestrikerには下記のようなレビュー記録のメトリクスを出力する機能がある。
上記は、実施日ごとに、レビューのステータス(完了、解決、無効)とレビューコメント数を集計する。
この集計から、レビューの活発具合、レビューの貢献具合を見ることができる。
コードレビューWebシステムをレビュー工程の一プロセスへ含むように運用するには、いくつかのハードルを越える必要がある。
だが、レビューをもっとお手軽に行えて、更にはDBにあるレビュー記録からメトリクスを出力して、品質を測定できる可能性がある。
色々試してみたい。
| 固定リンク
「プログラミング」カテゴリの記事
- Javaのモジュールシステムの考え方をまとめてみた(2022.10.21)
- Javaのモジュールシステムは複雑性をより増している(2022.09.10)
- Javaはなぜ関数型言語になろうとしているのか(2022.09.02)
- Javaのラムダ式の考え方(2022.08.10)
- Javaはオブジェクト指向言語ではなく関数型言語だった~「[増補改訂]関数プログラミング実践入門」はお勧めの本だ(2022.08.06)
「プロジェクトマネジメント」カテゴリの記事
- JTCの壁を壊す「Redmine参謀本部」という戦略~現場の職人気質を活かす組織論(2026.05.19)
- PM理論で読み解く日本人リーダーの弱点(2026.05.12)
- リプレースとアーキテクチャモダナイゼーシヨンの違いの本質は何なのか?(2026.04.08)
- PMPとCSM取得者数推移(日本 vs 中国)から読み取れる指針は何か?(2026.02.23)
- 製造業のDXを推進する部門をITコーポレート部門に割り当てるとなぜ失敗するのか(2026.02.04)
「ソフトウェア工学」カテゴリの記事
- JTCの壁を壊す「Redmine参謀本部」という戦略~現場の職人気質を活かす組織論(2026.05.19)
- マイクロマネジメントに陥ったチケット駆動開発の罠と再生戦略 #redminet(2026.04.26)
- リプレースとアーキテクチャモダナイゼーシヨンの違いの本質は何なのか?(2026.04.08)
- アーキテクチャモダナイゼーションにおけるAMETチームの役割と責任範囲は何か(2026.03.23)
- アーキテクチャモダナイゼーションとはそもそも何なのか?(2026.03.22)


コメント