すがブロ

sugamasaoのhatenablogだよ

Trac構築挫折(5)

昨日の続き:id:seiunsky:20061227:1167240905

先日のコメントから

どうも apahce との連携は問題があるようだ。 逆に言うと、 tracd で我慢できればそこまではなんとかできるはずである。

というわけで

tracd で起動のテスト
リポジトリは以前作成してあるものを利用する(/tmp/svn/test)

trac-admin /tmp/trac-test initenv
Project Name [My Project]> trac-test
Database connection string [sqlite:db/trac.db]>
Repository type [svn]> svn
Path to repository [/path/to/repos]> /tmp/svn/test
Templates directory [/usr/share/trac/templates]>

Creating and Initializing Project
(中略)
Warning:

You should install the SVN bindings

                                                                                                                                        • -

Project environment for 'trac-test' created.

You may now configure the environment by editing the file:

/tmp/trac-test/conf/trac.ini

If you'd like to take this new project environment for a test drive,
try running the Trac standalone web server `tracd`:

tracd --port 8000 /tmp/trac-test

Then point your browser to http://localhost:8000/trac-test.
There you can also browse the documentation for your installed
version of Trac, including information on further setup (such as
deploying Trac to a real web server).

The latest documentation can also always be found on the project
website:

http://trac.edgewall.org/

Congratulations!

全然コングラチュレーションじゃない。
Warning:You should install the SVN bindings
と出ている。で、これは先日のid:nekotank氏のコメントにある subversion の binding の問題だろう。
ちなみに、試しに web からアクセスしてみると Oops… とか言われた。

Python用の svn ライブラリが入ってないのでこれをインストールしないとtrac からリポジトリが見えません(^^;
必須:SWIG(aptでインストール)
subvesion のソースコードの入っているディレクトリで
make swig-py
make install-swig-py
でライブラリをインストールしてから trac-admin で再構築しなおしますとリポジトリが参照できます。

確かにSWIG自体はインストールしていたけど、 make swig-py なんてやった覚えがない。
そこで、subversionのソースから configure をして上記の通りインストールを行った。
その後上記で作成した trac-test を削除して、同じ設定で再度構築→同じエラー(´Д`)
画面に表示されるエラーログはこんな感じ

Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 387, in dispatch_request
dispatcher.dispatch(req)
File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 191, in dispatch
chosen_handler = self._pre_process_request(req, chosen_handler)
File "/usr/lib/python2.4/site-packages/trac/web/main.py", line 263, in _pre_process_request
chosen_handler = f.pre_process_request(req, chosen_handler)
File "/usr/lib/python2.4/site-packages/trac/versioncontrol/api.py", line 73, in pre_process_request
self.get_repository(req.authname) # triggers a sync if applicable
File "/usr/lib/python2.4/site-packages/trac/versioncontrol/api.py", line 91, in get_repository
raise TracError('Unsupported version control system "%s"'
TracError: Unsupported version control system "svn"

trac的にはやっぱりsvnなんて知らないらしい。うーん。trac側に明示的にswig-pyを使うというのを教えてやらないといけないのだろうか。