3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援→開発戻り浦島太郎状態の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。

(バグ管理)Mantisをインストールしてみた

Excelベースのバグ管理していたのを、ちゃんとしたバグトラッキングを使うようにするためにMantisを導入してみました。

(前の会社ではredmine導入を提案しそれで進捗管理もしてましたが、今回はバグ管理だけなのでMantisにしました。)

まず、Mantisを動かすための環境を整えるため、下記をインストールします。

(OSはWindowsServer2008 Std x64。 DBはMySQLを使用。)

・Apache2.2.10

・PHP5.2.8 (PHP

・MySQL5.0.67(x64) (MySQLはデフォルトの文字コードUTF-8を使うように設定します。)

Mantisの公式サイトより最新版をダンロードします。

(今回はバージョンは 1.1.6 です。)

ダウンロードした mantisbt-1.1.6.zip を解凍し、ディレクトリ名を mantis に変更して、Apacheのドキュメントルートに配置します。

ここからはMantis Manual(日本語版) インストールを参考にしてます。

データベースのテーブルを作成し、基本的な設定ファイルを作成するため、ブラウザ下記のURLにアクセスします。

http://xxxx/mantis/admin/install.php

Username,Admin UsernameはどちらもDBのユーザ名となります。(おそらく、Admin Usernameはテーブル作成がらみのINDEX、CREATE、DELETEおよびDROPの権限が必要なのでしょう。)

上記の場合、Usernameは root を使用していますが、セキュリティ的に考えるとALTER、SELECT、INSERTおよびUPDATの権限をもった一般ユーザのほうが好ましいです。

これで、"Install/Upgrade Database"ボタンを押下すると、データベースと設定ファイルを作成してくれます。

下記のように設定の結果が"GOOD"になっていることを確認します。

次に config_inc.php (mantisのルートディレクトリに存在)を設定します。

上記の admin/install.php で設定できていれば、$g_hostname,$g_db_type などDBに関する最低限の設定はここに記されていると思います。

設定マニュアルには日本語で使用する際に必要(設定しないと文字化けする)だということで、下記の設定を付け加えます。(DBもUTF-8で運用するようにMySQL側で設定済みです。

$g_default_language = 'japanese_utf8';

これで下記のURLで設定できているかどうかチェックします。

http://xxxx/mantis/admin/check.php

メールの送信のテストもこのページで行えるのですが、これが曲者で今回ハマりました。

今回レンタルサーバーで借りているメールサーバを使う予定だったのですが、契約プロバイダが最近はやりのOP25B(Outbound Port25 Blocking)を導入してます。

レンタルサーバのメールサーバはOP25Bでも使えるように設定されておりSMTPポートは528でSMTP認証をかけています。

Mantisの設定マニュアルを読む限りではSMPT認証時に使うユーザ名とパスワードを指定できるのでできると思ったのですが。。。

その際に設定した内容は下記の通りです。

$g_phpMailer_method = '2';

$g_smtp_host = "レンタルサーバSMTPホスト:587";

$g_smtp_username = "SMTP認証時のユーザID";

$g_smtp_password = "SMTP認証時のパスワード";

$g_administrator_email = 'メールアドレス';

$g_from_email = 'メールアドレス';

これで、"Send Mail"ボタンでメール送信テストをしてみましたが、「Testing Mail - PROBLEMS SENDING MAIL TO: メールアドレス. Please check your php/mail server settings.」となり、できませんでした。

$g_phpMailer_methodの値を 0:mail() , 1:sendmail(インストースしてないので使えないのはわかってますが) , 2:SMPT でいろいろ変えても無駄でした。

結局、かなりの時間かけてもわからなかったのでメール通知はあきらめました。

まあプロジェクトメンバも少数だし、RSSもついてるからそれでカバーできるかと。

メール通知を使用しない設定は下記の通りです。

$g_enable_email_notification = 'OFF';

とりあえずメール機能は妥協し、ログインページからログインします。

http://xxxx/mantis/

初期設定のままだと

Username:Administrator

Password:root

でログインできます。

ログイン後は英語のままなので、My Account メニューより、Language の値を Japanese にします。

設定マニュアルによると、「そして、管理画面ですくなくとも1つ以上の管理者権限のアカウントを作成して、すぐにデフォルトの管理者アカウントを削除してください。アカウントを再生成できますが、まず、そのアカウントを削除して、Cookieがパッケージにいたずらしないようにすべきです。そのアカウントの名前を変えてしまうか、永久に削除してしまうほうがよりいいでしょう。パッケージを設定した後に、デフォルトの管理者アカウントを削除することを忘れないでください。」とあるので、「システム管理」→[ ユーザー管理 ] より管理者権限を持った新規ユーザを作成します。

新規ユーザ作成の際に、言語が自動的に「auto」になってしまっています。これを「japanese」に変更しておかないとえらいことになるので注意しましょう。

後はプロジェクトを作成して、ユーザを作成、プロジェクトへの追加をし、プロジェクトのカテゴリを設定するとOKです。

(プロジェクトのカテゴリで担当者を決定できますが、これを行うとそのカテゴリでバグを登録すると、自動的に担当が決定し、ステータスも「担当者決定」になるので注意しましょう。新規追加時にステータスを通常通り「新規」にするには「システム管理」→「設定管理」→「ワークフロー閾値」で、「割当てられたチケットに設定するステータス」の値を「新規」にするとOKです。でも、担当は勝手にカテゴリに登録された担当者になってしまいますが。。)

参考:

Mantis公式マニュアル

mantisを使ってみる

サブミッションポート環境下でのメール設定 for mantis sendmailが入ってる環境なら、この方法でOP25Bでもメール通知できそうです。

バグトラッカーMantis

Mantisのconfig_inc.phpに指定できる一覧