Scarabを触ってみました。

Scarabって?

Scarab は Issue Tracking System です。
Issue Tracking System とは、
Bugzilla に代表される Bug Tracking System を汎用化し、バグの管理だけではなく
プロジェクトの懸念事項やタスク(Issue)の管理も行えるようにしたもの。みたいです。

【機能一覧】

  • Web からほぼすべての設定を行うことができる管理コンソール
  • 複数プロジェクト管理(Module)
  • ユーザアカウント管理
  • プロジェクト毎のユーザ権限管理
  • Issue の柔軟な検索と検索手順の保存と再生 (Query Save)
  • 関連する Issue 同士を結び付け、依存関係を管理 (Dependencies)
  • Issue への担当者割り当て
  • mail での担当者、プロジェクトメンバーへの通知 (Notification)
  • Issue に関連するファイルをアップロード
  • Issue にコメントを掲示板のように追記可能
  • 2種類のレポート作成機能
  • XML の Import/Export

インストールしてみる

環境

インストールする

①本家サイトからScarabをダウンロードします。
scarab.tigris.org

②DBの選択
%SCARAB_HOME%/build/default.propertiesを編集し、Postgres*1を使用するように変更しました。
あと、ユーザ名とパスワードも変更しました。

# Please see the documentation on the website and README.txt 
# file for how to configure your specific database.
#
# This property can have one of the following values:
#
#   mysql, postgresql, hypersonic, mssql, oracle, db2
#
scarab.database.type=postgresql

# This is the username and password that Scarab uses to connect
# to the database when its running.
scarab.database.username=scarab
scarab.database.password=scarab

コンパイルする
%SCARAB_HOME%/build/へ移動し、ant*2を実行します。
すると、%SCARAB_HOME%/targetが作成されます。

④テーブル作成
%SCARAB_HOME%/src/sql へ移動し ./create-db.sh を実行することでテーブルがcreateされる
らしいんですが、何故か失敗しました。(原因はきちんと覚えてません。。)
その為、%SCARAB_HOME%/src/sql/LoadOrder.lstに定義されているスクリプトを一つずつ
順番に実行し、テーブルをcreateしました。。

⑤デプロイ
同梱のTomcatは使用したくなかった為、%SCARAB_HOME%/target/webapps/scarab を
webappsへコピー。

実行

Tomcat起動
Tomcatを起動し、http://localhost:8080/scarab/ へアクセスすると
index.html が表示されました。

②ログイン
ユーザID:Administrator
パスワード:1
で無事にログインできました。
眠いし、すんなり動いてほっとした(−−;
今のところ文字化けもないし。


ちょこちょこっと動かしただけだけど、なんとなく使えそうな気がする。
ただ、Scarab用語がなかなかわかりづらい。。
また暇をみていじってみよう。zzz

【用語集】
Issue … 案件
Scarab で最も基本になるタスクや不具合といった情報
Issue Type … 案件種別
案件がタスクなのか不具合なのか Patch なのかなどの種別
Module … モジュール
一般的にはプロジェクト。Scarab のプロジェクト管理する単位
Query … クエリ
案件の検索条件

【参考】
http://scarab-ja.sourceforge.jp/cgi-bin/hiki.cgi

*1:Postgreを使用した場合DBいくつかのフィールドがbytea型で使用されている為、文字化けが発生します。解決策として、torque-gen-3.1.jar の sql/base/postgresql/db.props を修正し、LONGVARCHAR=text としました。

*2:Antの1.6.2を使用したところ、バージョンのチェック処理でエラーと判定されました、その為、1.5.2を使用したところ、無事にコンパイルできました。