« Python2.5 + Trac0.10.4 + macro | Main | JavaアプリからXML-RPCでTracのTicketを更新 »

2007.10.14

Ubuntu ServerでTrac

 UbuntuServer(7.04)環境でのTrac環境構築。0.11ではなく、使い慣れた(?)0.10.4(ja)をベースに一部独自に編集したもの。なお、XMLRPCを使用するため、Pythonは2.5を使用。

 各種アプリケーション類をインストール。もしかしたら不要なものも混じっているかもしれませんが(^^; なお、ディレクトリ移動等は省略している場合もあります。

$ sudo apt-get install apache2-mpm-prefork
$ sudo apt-get install python
 (⇒Python2.5が既に入っていたようだ)
$ sudo apt-get install subversion
$ sudo apt-get install python-sqlite
$ sudo apt-get install clearsilver-dev
$ sudo apt-get install python-clearsilver
$ sudo apt-get install python-docutils
$ sudo apt-get install libapache2-mod-python
$ sudo apt-get install libapache2-svn
$ sudo apt-get install python-subversion
$ sudo apt-get install enscript

apt-getでここまでインストールできると、かなり楽ですね。なお、SilverCityのパッケージが見つからなかったので、リポジトリブラウザでのハイライト表示用にenscriptを使用しています(おそらく、SilverCityをソースからビルドして、パスを通しておけば動くような気もしますが)。

 Tracのアーカイブを展開し、

$ sudo python setup.py install

でインストール。テンプレートファイル等は/usr/share/tracフォルダにインストールされました。

 WebAdminプラグインのインストール。Python2.5用のeggファイルがないので、リポジトリからソースをチェックアウトしてからインストール(事前に別途ez_setup.pyを準備しておく必要があります)。

$ sudo wget http://peak.telecommunity.com/dist/ez_setup.py
$ sudo python ez_setup.py
$ mkdir webadmin
$ svn co http://svn.edgewall.com/repos/trac/sandbox/webadmin/ webadmin
$ cd webadmin
$ sudo python setup.py install

 リポジトリ等の準備。/var内に作成することとします。trac-adminは実行ファイルとしてパスが通っています。

$ sudo mkdir /var/tracdata
$ sudo mkdir /var/tracdata/svn
$ sudo mkdir /var/tracdata/trac
$ sudo mkdir /var/tracdata/auth
$ cd /var/tracdata/svn
$ sudo svnadmin create test --fs-type fsfs
$ cd /var/tracdata/trac
$ sudo trac-admin test initenv
 (必要な項目を入力)
$ cd /var/tracdata/auth
$ sudo htpasswd -cm svn.passwd (username)

 フォルダへの権限設定。これをしておかなければ、アクセス時にいろいろなエラーが発生してしまいます。

$ sudo chown -R www-data:www-data /var/tracdata
$ sudo mkdir /var/www/.python-eggs
$ sudo chown www-data:www-data /var/www/.python-eggs

 なお、頻繁にソースの編集を行うような場合は、ソースファイルが入っているフォルダに対してwww-dataの書き込み権限を与えるか、あるいはchownをしておかないとコンパイル後のpycファイルの(自動)生成を行うことができません。

 Apacheの設定。apt-getでApache2をインストールした場合、/etc/apache2/conf.dフォルダ内に追加した.confファイルは自動的にロードされるような設定になっているので、Subversion用にsvn.confファイルとTrac用にtrac.confファイルを準備。

【svn.conf】

<Location /svn >
DAV svn
SVNParentPath /var/tracdata/svn
SVNAutoversioning on
SVNListParentPath On

AuthName "Subversion TestRepository"
AuthUserFile /var/tracdata/auth/svn.passwd
</Location>
<Location /svn/test>
AuthType Basic
Require valid-user
</Location>

【trac.conf】

Alias /trac "/usr/share/trac/htdocs"
<Directory "/usr/share/trac/htdocs">
Options MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>

<Location "/tracproj/test/login">
AuthType Basic
Require valid-user
AuthUserFile "/var/tracdata/auth/svn.passwd"
</Location>

<Location "/tracproj">
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracUriRoot /tracproj
PythonOption TracEnvParentDir /var/tracdata/trac

AuthName "TracTestProject"
AuthUserFile /var/tracdata/auth/svn.passwd
</Location>

#ちなみに、apt-getでpython-genshiもインストールできるようなので、Trac0.11が出た場合も比較的インストールしやすそうな感じ? ちなみに、Ubuntuも7.10が近々リリースされるようで。

|

« Python2.5 + Trac0.10.4 + macro | Main | JavaアプリからXML-RPCでTracのTicketを更新 »

Linux」カテゴリの記事

Subversion・Trac・etc.」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/3959/16753446

Listed below are links to weblogs that reference Ubuntu ServerでTrac:

« Python2.5 + Trac0.10.4 + macro | Main | JavaアプリからXML-RPCでTracのTicketを更新 »