前回、Mantisに挑戦して、何とか入った事は入ったんだけど、どうすりゃ うまく行ったのか よくわかんないままだった。
でまぁ、よくわかんないなりに、もう一回挑戦してみる。という話です。はい。
背景
ちなみに、Mantisってのは 所謂 バグトラッキングシステム(BTS)って奴でして、同じような奴に、Bugzillaとか影舞とか 最近 人気急上昇中の Trac がある訳。
で、何でBTSが必要なのよ?って言われると、まぁ↓このような状況になってみれば わかりますって。
- 自社で出した製品で不具合が見つかる
- 不具合対策に、n人以上の関係者の調査と協力に頼らざるを得ない
- 各関係者は傍に居らず(遠方に居る)、電話かE-mailに頼らざるを得ない
- 関係者は、課が違うので協力を得るには、関係者の上長経由になったりする
- 誰も調整役を買って出る奴が居ない(当たり前だな)ので、E-mailの応酬が続く
- 何が最新の情報かわからない。わからないけど、現場の人間のやり取りで何とか動いてしまう
- でも やっぱり、失敗する時があって、そん時は 現場の人間が怒られる
電話の問題点ってのは、情報が残らないのと、1対1でしか合意がなされない点。
E-mailは、それを補完するメディアではあるのだけれど、大量のE-mailが発信されると あっという間にカオス(混沌)に至る。
まぁ、便利なのには間違いが無いんだけど、やはり限界ってのはある訳ですよ。
どうすればいいのか言うと、情報を一旦整理して関係者に確認を取る必要がある訳です。
で、この作業を業務(システム)として割り当てられているなら問題は無いんだけど、業務として構築されてない状態だと、本来この仕事は「無駄な業務」なんですよ。
つまり、冷静に見ると、その仕事を買って出ている奴は、「会社の(本来の)仕事を放っている奴」って事なんですね。
じゃぁどうすりゃいいんだよっ!って話になるでしょ?
一番ハッピーなのは、これ(不具合のフォロー体制)を回す仕組みを会社に取り入れる事なんですよね。
ただ、自分みたいな若輩が、「BTS入れましょう!」って言っても無理。
だって、今のシステムで「ほとんどの場合 何とか動いている」んだから。
後、肝心の「BTS入れましょう!」っている奴が、BTSとは何ぞやってのを知らないとねぇ。
という訳で
挑戦する訳。
1.インストール前の確認
Mantis入れる際に必要なのは、Apache,PHP,MySQLみたい。
とりあえず、自分の環境には、以下を入れてみました。
PHPは、この間 PHP4を入れていたんだけど、今はPHP5を入れてます。
関連サイトを眺めていたら、MySQL 5.0 になって、パスワード認証方法が変わって、PHP4だと 旧来のパスワード認証をサポートするように、設定ファイルを書き換えろとか色々あるんで、ちゃっちゃと変えました。
PHP5とMySQL5.0のインストール自体は、結構情報が豊富なので問題は特に起きませんでしたね。
- PHP5のインストールと設定 - [データベース]All About
http://allabout.co.jp/career/database/closeup/CU20040928A/ - MySQL5.0のインストール (Windows : EUC-JP)
http://tsuttayo.sytes.net/mysql/install/mysql/10/30/20/10/install.php
インストール時に使ったファイルは、以下の通り。
後、MySQLには、MySQL Administratorっていう管理ツールが別途ダウンロードできるらしいです。
使い方は、よくわかんないけど結構便利っぽいみたいなのと、カッコいいので入れちゃう。
- MySQL AB :: MySQL Administrator Downloads
http://dev.mysql.com/downloads/administrator/index.html
自分は、mysql-administrator-1.1.7-win.msi を入れました。
Mantis2 posted from フォト蔵
2.MantisのDLと展開
で、インストール条件を満たしたので、Mantisをサイトからダウンロードしてきます。
- Mantis Bug Tracker
http://www.mantisbt.org/
とりあえず、1.0.0をDLすりゃOKと思います。
で、展開。
$ tar xzvf mantis-1.0.0.tar.gz mantis-1.0.0/ mantis-1.0.0/account_delete.php mantis-1.0.0/account_page.php mantis-1.0.0/account_prefs_inc.php mantis-1.0.0/account_prefs_page.php mantis-1.0.0/account_prefs_reset.php mantis-1.0.0/account_prefs_update.php mantis-1.0.0/account_prof_add.php mantis-1.0.0/account_prof_delete.php mantis-1.0.0/account_prof_edit_page.php mantis-1.0.0/account_prof_make_default.php mantis-1.0.0/account_prof_menu_page.php ... mantis-1.0.0/summary_jpgraph_page.php mantis-1.0.0/summary_page.php mantis-1.0.0/verify.php mantis-1.0.0/view.php mantis-1.0.0/view_all_bug_page.php mantis-1.0.0/view_all_inc.php mantis-1.0.0/view_all_set.php mantis-1.0.0/view_filters_page.php
これを、Apacheの管理対象フォルダに移動。
3.参考サイト
で、早速インストールと行きたいけど、まずは参考サイト。
- インストール(日本語オフィシャル?)
http://www.alles.or.jp/~sogabe/mantis/manual/1.3.html
絶対一度は読むべきと思う。 - Installation
http://manual.mantisbt.org/manual.installation.php
英語も読んだ方がいい。特に、下の方にある"User Contributed Notes"の所。
ここは、自分と同じ引っかかった人達のやり取りが載っているですよ。
以下は、先人の方々(日本語版)。
- Mantis - バグ管理システム - 複数インスタンスでコードを共有する
http://www.alles.or.jp/~sogabe/mantis/article/article3.html - 眠る開発屋blog:バグトラッキングシステム、Mantis
http://dev.blogtribe.org/entry-f40e7f3e404b52b8b0ba22061dbcd37e.html - [戯] PHP/MySQL によるバグ追跡システム
http://cl.pocari.org/2005-03-14-9.html - bonbonniere: Mantisを設置(2)
http://kiyo.chips.jp/blog/archives/2005/05/mantis2.html - mantis インストール to linux-fedora - イロイロ探索中 - livedoor Wiki(ウィキ)
http://wiki.livedoor.jp/snobx/d/mantis%20%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB%A1%A1to%20linux-fedora - Setup Memo
http://www.e-ohkubo.com/setupmemo/compile.html
下の方に、mantisのセットアップメモがある
以下は、先人の方々(英語版)。
- Mantis Installation
http://www.worker-bee.com/projects/docs/MantisInstallation.html - Victor Boctor's Blog - August 2005
http://www.futureware.biz/blog/index.php?m=200508 - CS370 Defect Tracker Review version 1.1
http://www.cs.utexas.edu/users/almstrum/cs370/jeffsch/docs/tracker-review-v1-1.html#review3.4
4.どうやら一番重要なのはDBの設定
オフィシャルのインストールを見ると、Mantisのインストールは、admin/install.phpにアクセスすりゃOKみたいな事が書いてあるんですね。
しかし、漏れの場合、そこで何度も失敗したんですよ。ちくしょー。
で、思ったのが、Mantisのインストールで重要なのは、「DBの設定が重要」って事です。
Mantisのインストールの説明と、install.phpにアクセスした時の書式から、
- データベース名は、"bugtracker"がデフォルト
- ユーザ名は、"administrator"
- パスワードは、"root"
って事が推測できます。
DBの設定は、これを使ってMantisが設定できるように調子を合わせてやる必要があるみたいです。
Mantis3 posted from フォト蔵
という訳で、必要な設定が何なのかよくわかんないまま、mysqlコマンドと格闘した結果を載せます。
(以下文中、mysqlのroot権限を持つユーザを'root'、パスワードを'wacky'と思ってください)
$ mysql -u root -p Enter password: wacky Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 22 to server version: 5.0.18-nt-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. # 'bugtracker'ってデータベースを作成する mysql> create database bugtracker; Query OK, 1 row affected (0.02 sec) # 'bugtracker'データベースに、'administrator@localhost'ってユーザと'root'っていうパスワードを持ち、全ての権限を持つユーザを作るらしい mysql> grant all privileges on bugtracker.* to administrator@localhost identified by 'root' with grant option; Query OK, 0 rows affected (0.06 sec) mysql> quit Bye # 設定を再読み込み $ mysqladmin reload -u root -p Enter password: wacky # よくわからんけど、MySQLのテーブル作成スクリプトが用意されているらしいので実行 $ cd ...\mantis-1.0.0\core\adodb\session $ mysql -u root -p bugtracker < adodb-sessions.mysql.sql Enter password: wacky # 念の為、更に再読み込み $ mysqladmin -u root -p reload Enter password: wacky
上の設定を行った後、admin/install.phpにアクセス
Mantis4 posted from フォト蔵
Type of Database | MySql |
Hostname(for Database Server) | localhost |
Username(for Database) | administrator |
Password(for Database) | root |
Database name(for Database) | bugtracker |
Admin Username(to create Database) | root |
Admin Password(to create Database) | wacky |
Print SQL Queries instead of Writeing to the Database | disable |
そうしたら、自分の場合、以下のように成功しました。
Mantis5 posted from フォト蔵
失敗したら、以下のようになります。
Mantis6 posted from フォト蔵
上では、どうもデータベースに対する権限が足りないんで、テーブルが作れないよ。って文句言っているみたいなんですけどね。
5.インストールが成功したら
インストールが成功したら、後はこっちのもの。
mantis-1.0.0のルートディレクトリに、config_inc.php.sample って設定ファイルがあるので、コピーして config_inc.php を作り、以下の所を ちょちょいと直せばOKです。
$g_hostname = "localhost"; $g_db_username = "administrator"; # こいつと $g_db_password = "root"; # こいつ $g_database_name = "bugtracker"; $g_db_type = "mysql";
で、mantis-1.0.0/index.phpにアクセスすると、以下の画面を拝む事が出来ます。ありがたや。
Mantis7 posted from フォト蔵
6.日本語化とか
日本語化は結構簡単で、config_inc.phpに以下を追加するだけです。
$g_default_language = 'japanese_euc';
ちなみに、MantisはE-mailを受け取ったり・出したりって機能が付いているんですが、最初の内はとりあえず使ってみたいじゃないですか?
そういう時は、以下のパラメータを追加します。
$g_enable_email_notification = OFF;
すると、ログイン画面が ちょっと変化します。
Mantis9 posted from フォト蔵
7.とりあえず使ってみる
とりあえず使っちゃいましょう。
まずは、administrator/rootでログイン。
Mantis10 posted from フォト蔵
早速、ユーザアカウントを作りませぅ。
「システム管理」で、「アカウント作成」ボタンを押します。
Mantis11 posted from フォト蔵
メールはテキトー。アクセス権は、とりあえず「開発者」。
Mantis12 posted from フォト蔵
パスワードの空だけどいいか?って聞いてくる。まぁ、テストなんだし後から変えられるのでYES!
Mantis13 posted from フォト蔵
これで、ユーザアカウントが出来ました。
早速、作ったアカウントでバグ報告してみたいんだけど、その前にバグ報告する対象である「プロジェクト」を作らないといけません。
「プロジェクトを作成」できるのは、「管理者」じゃないと出来ないらしいので、このまま作りましょう。
ちなみに、Mantisでは プロジェクトの作成やバグ報告するには、それなりの権限が必要でして、一番下の権限から、
- 参照
- 登録
- 編集
- 開発者
- マネージャー
- 管理者
となっているみたいです。
これらの権限の行使範囲は、「システム管理」→「設定管理」をクリックすると一覧で見られます。
Mantis15 posted from フォト蔵
という訳で、このまま「プロジェクトの作成」に入ります。
「システム管理」→「プロジェクト管理」で「新しいプロジェクトを作成する」ボタンを押します。
Mantis16 posted from フォト蔵
でまぁ、プロジェクトを作ったので、一旦ログアウトし、今度は作ったアカウントでログインします。
パスワードを空にしたので、アカウント名だけで入れちゃいます。
Mantis19 posted from フォト蔵
入ると、ユーザ名が変わっている点に注目。
Mantis20 posted from フォト蔵
という訳で、「登録」を選択。
Mantis21 posted from フォト蔵
早速登録、登録。あ、ステータスとか登録しとけば良かったですね。まぁ、いいや。
ちなみに、下の方に、ファイルを添付できたりするボックスがあったりします。
Mantis22 posted from フォト蔵
で、以下が登録が成功した画面。
Mantis23 posted from フォト蔵
画面を見ていると、どうもフィルタしつつ一覧表示できるみたいですね。
なるほど、なるほど。