Tracの使い方 - TracWebAdminインストール - | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

前回「Tracの使い方 - trac-adminの使い方、チケットの管理とロードマップの確認 - 」にてTracの管理コマンドである「trac-admin」の使い方に触れましたが、毎回コマンドラインで操作するのも面倒な場合が多いので、Web上からこれらの管理が行えるようTracWebAdmin を導入してみました。

現在、このツールはTracとは別に提供されているので、別途インストールを行います。


※ このツール自体は、Tracを使用する上で必須ではありません。

  また、バージョン0.11からは標準でTracに組み込まれています。

  コマンドラインのtrac-adminでも一定の環境整備をしてしまえばそこまで必要なものでもないかもしれません。


環境等は、全て「バグトラッキングシステム「Trac」インストール 」で書いたものと同様です。



Trac Web Adminを導入する


1. setuptoolsのインストール


まず、TracWebAdminインストールの際に必要なsetuptools をインストールします。

setuptoolsのインストールには、そのブートストラップモジュールである、ez_setup.py ファイルから行えます。


# python ez_setup.py

ただ、このez_setup.pyファイルですが、内部のプログラムを見れば分かりますが外部から必要なファイルをダウンロードしインストールするという流れになっている為、ネットワークの関係で正常にダウンロードできずにインストールが行えない事があります。

その際は、setuptoolsをソース (またはRPMもあり)からインストールすればよいでしょう。

(私の環境では、setuptools-0.6c6.tar.gzからインストール)

インストール方法は、上記ソースを展開した後に


# python setup.py install

で、インストールされます。

インストール後は、「easy_install」というコマンドが存在しているかをチェックします。



2. TracWebAdminをインストール


TracWebAdmin のソースをダウンロードし、インストールします。

ソースは、Pythonのバージョン(2.3系、2.4系)によって分かれていますので自分の環境を確認の上、必要な方をダウンロードしましょう。

私の環境では、Pythonのバージョンが2.3であるため「TracWebAdmin-0.1.2dev_r4240-py2.3.egg.zip」をダウンロードしました。

これをサーバー上に、アップしリネームします。


※ ここにあるTracWebAdminをインストールしてもメニュー等が全て英語です。

  cl.pocari.org に、このメニュー等を全て日本語化したeggファイルがありますので、そちらを利用しても良いと

  思います。取り合えずインストールして後から日本語化することも可。



# mv TracWebAdmin-0.1.2dev_r4240-py2.3.egg.zip TracWebAdmin-0.1.2dev_r4240-py2.3.egg

次に、先ほどセットアップしたsetuptoolsのeasy_installコマンドを利用してTracWebAdminをインストールします。


# easy_install TracWebAdmin-0.1.2dev_r4240-py2.3.egg

Processing TracWebAdmin-0.1.2dev_r4240-py2.3.egg
creating /usr/lib/python2.3/site-packages/TracWebAdmin-0.1.2dev_r4240-py2.3.egg
Extracting TracWebAdmin-0.1.2dev_r4240-py2.3.egg to /usr/lib/python2.3/site-packages
Adding TracWebAdmin 0.1.2dev-r4240 to easy-install.pth file

このようにメッセージが出ればインストール完了です。



3. Tracの設定ファイルを編集


TracWebAdminがインストール完了したら、次にTracの設定ファイル(trac.ini)を編集します。

trac.iniファイルは、Tracのプロジェクトディレクトリの「conf」ディレクトリ内にあります。


# vi /home/trac/project1/conf/trac.ini

下記を追記します。

[components]
webadmin.* = enabled

Trac上の複数のプロジェクトに対して、TracWebAdminを有効にしたいのであれば、各プロジェクトのディレクトリごとに編集を加えます。



4. TracWebAdmin利用の為の権限を付与


TracWebAdminが使える環境になったからと言って誰でも使われたら困りますので、特定のユーザーのみTracWebAdminを利用できるように権限を付与します。

権限能付与は、trac-adminコマンドを利用して行います。

trac-adminコマンドの基本的な使い方は、前回の


Tracの使い方 - trac-adminの使い方、チケットの管理とロードマップの確認 -


を参照してください。


また、Trac上の細かな権限一覧を確認したい場合は、


Tracの使い方 - Trac上で管理されている権限一覧 -


も参考にしてみてください。


# trac-admin /home/trac/project1

Trac [/home/trac/project1]> permission add demo TRAC_ADMIN

上記では、demoユーザーにTRAC_ADMIN権限(TracWebAdminを利用できる権限)を付与しています。

Trac上の複数のプロジェクトに対して、TracWebAdminを有効にしたいのであれば、各プロジェクトごとのユーザーに対して権限を与えます。

これで一通りの設定が完了です。

最後にApacheを再起動します。



TracWebAdmin


右端に「Admin」と言うメニューが追加されています。

これで、コマンドラインで行っていた管理がWeb上からでも行えます。



5. TracWebAdminの日本語化

インストールが完了したTracWebAdminですが見てのとおりメニュー等が全て英語です。

やはり日本語の方が使いやすいでしょうからこれを日本語化してみたいと思います。

日本語化のパッチ等がこちら に公開されています。

パッチの他にeggファイルも公開されていますので、環境に合わせやすく非常に便利ですね。


私の環境では、先にオリジナルのTracWebAdminをインストールしましたので、ここで公開されているパッチを利用して、日本語化してみたいと思います。

「パッチ: webadmin-r4429-ja.patch」をダウンロードしてきて・・・TracWebAdminをインストールした場所に移動します。

インストールした場所は、easy_installを利用した際に表示されます。


# cd /usr/lib/python2.3/site-packages/TracWebAdmin-0.1.2dev_r4240-py2.3.egg

# patch -p0 < /home/hogehoge/webadmin-r4429-ja.patch.txt


最後にApacheを再起動



TracWebAdminJA


見事に日本語化されていますね。すばらしい。。。


先にも書きましたが、trac-adminコマンドだけでも管理は行えますので必須ではありませんが私が操作していた中で、trac-adminコマンドで日本語のマイルストンや優先度を追加してたら文字化けしてしまい、削除が行えなくなってしまった事があります。

TracWebAdmin上からではそれらは問題なく削除できたので、そういった面でもTracWebAdminの方が使い勝手が良いかもしれません。


TracWebAdminで出来る事は基本的にtrac-adminコマンドで出来る事とイコールですので、各項目の意味などは、「Tracの使い方 - trac-adminの使い方、チケットの管理とロードマップの確認 - 」を参照してほしいと思います。


その他に出来る事と言えば、基本設定でプロジェクト名や概要を書けたり、ログの制御を変更できたり追加したプラグインを確認できたりと言ったところでしょうか。



6. TracWebAdminの無効化と削除(おまけ)


TracWebAdminを削除(アンインストール)したり、無効化する方法を書いておきます。

まず無効化する方法ですが、ユーザー別に無効化したいのであればそのユーザーからTRAC_ADMIN権限を剥奪します。



Trac [/home/trac/project1]> permission remove demo TRAC_ADMIN


全てのユーザーに対して無効化したいのであれば、trac.iniファイルを編集し、TracWebAdminを無効化してしまいましょう。

3. Tracの設定ファイルを編集」で行った、trac.iniファイルに加えた内容をコメントアウトもしくは削除します。

編集後は、Apacheを再起動します。

最後に、TracWebAdminが必要なくなったのでアンインストールする場合ですが、これはTracのインストールディレクトリ内にある、TracWebAdmin用のディレクトリを全て削除します。


# rm -Rf /usr/lib/python2.3/site-packages/TracWebAdmin-0.1.2dev_r4240-py2.3.egg/

これでTracWebAdminが削除されます。