Trac インストール
プロジェクトのポータルサイト用に Trac をインストールしました。
インストールした Trac は、インタアクト(株)さんが公開している、Trac 0.9.6 日本語版です。日本語版では、マニュアルなどが日本語化されています。
上記サイトより、trac-0.9.6-ja-1.zip を取得し、適当なディレクトリに展開。展開後、ドキュメントに従い Trac をインストール。
# python setup.py install
Trac 自体のインストールはすんなり成功。
続いて、Trac の環境ディレクトリ(って名称であっているのかは謎ですが)を作成。
# mkdir /var/trac # trac-admin /var/trac/test initenv
上記を実行すると、プロジェクト名、DB 接続文字列、Subversion リポジトリのパス、テンプレートディレクトリが聞かれます。
- プロジェクト名には test 等、管理対象とするプロジェクトの名称を入力。
- DB 接続文字列はデフォルトのまま sqlite:db/trac.db とする*1。
- Subversion リポジトリのパスは、ローカルマシン上のリポジトリパスを指定する。今回は /var/svn/test を指定しました。
- テンプレートディレクトリはデフォルトのまま /usr/share/trac/templates です。
これらを入力後、環境ディレクトリが作成されるはずなのですが、sqlite: なんて DB はみつからねーと python に怒られました。
なので、python-sqlite と、ついでに python-clearsilver をインストールして、再び環境ディレクトリ作成。で、問題なく環境ディレクトリが作成されました。
環境ディレクトリが作成後、下記コマンドで簡易サーバを起動して、動作確認。
# tracd -p 8000 /var/svn/test
http://localhost:8000/test にアクセスして、trac のトップページが表示されれば成功です。
簡易サーバで運用はアレなんで、mod_python 経由で trac を実行。
mod_python は Apache にインストール済みの想定。
/etc/httpd/conf.d/ に下記内容で trac.conf を作成。
<Location "/trac"> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir /var/trac PythonOption TracUriRoot /trac </Location> <LocationMatch "/trac/[^/]+/login"> AuthType Basic AuthName "Trac" AuthUserFile /var/svn/.htpasswd Require valid-user </LocationMatch>
/var/trac を環境ディレクトリの親として設定。これにより、/var/trac 以下に作成された環境ディレクトリが片っ端から表示できるようになる。
TracEnv を使用すれば、親ではなく環境ディレクトリを単発で指定可能。
認証は Basic 認証を使用。WebDAV+Subversion で使用している認証ユーザのファイルをそのまま使用。
こんな感じで、Apache 経由で Trac 完了。パーミッションの設定とかまだですけどね。
*1:PostgreSQL を使用することも可能らしいです