tracのプロジェクトを引越し
tracのプロジェクトを引越ししたのでその手順を。
引越し先の環境作成
tracってバックエンドにいろいろなDBを使えるんですが、デフォルトではBerkleyDBをSQLiteを使って参照しています。そこでSQLiteをインストール。インストールしておくと、Pythonをコンパイルしたときにsqlite3プラグインが自動的に作成されます。
# yum install sqlite-devel
次にPythonをコンパイル、インストール。私が使った環境ではデフォルトの位置に違うバージョンのpythonが入っているのでインストールディレクトリは変更しておきました。
$ ./configure --enable-unicode --enable-shared --prefix=/usr/local/python_v271 $ make # make install
インストール先のpythonライブラリが参照できるように /etc/ld.so.conf.d/以下へこんな内容のファイルを作成。
----- /usr/local/python_v271/lib -----
ldconfigをたたく。
# ldconfig
# /usr/local/python_v271/bin/python ~hoge/virtualenv/virtualenv-1.8.4/virtualenv.py /usr/local/trac_env
trac関連のいろいろをpipでインストール。
# ./bin/pip install genshi # ./bin/pip install babel # ./bin/pip install trac
一応これで新環境作成は終了。
プロジェクトディレクトリをコピー
あまり深く考えないでtracのプロジェクトをコピー。私の環境では複数のプロジェクトが/usr/local/trac以下にあったのでこうやってコピーしました。
# scp -pr /usr/local/trac disthost:/usr/local/
コピー先のパーミションなどは適当に調整します。
upgradeする
以前に動作していたtracと新環境のtracのバージョンが違う場合は、このまま動作させるとこんなエラーがログにでることがあります。画面的にはCSSが読めなかったり、JSが動作してなかったり。
2013-01-09 11:44:53,165 Trac[env] WARNING: Component <trac.env.EnvironmentSetup object at 0x2509d90> requires environment upgrade
こんな場合はtrac-adminでupgradeします。
# /usr/local/trac_env/bin/trac-admin /usr/local/trac/project_dir upgrade # /usr/local/trac_env/bin/trac-admin /usr/local/trac/project_dir wiki upgrade
認証なんかは適当に。