trac's archives

tracの移行作業

in trac
by ginriki | 3 月 6th, 2008 

少し前のことですが、tracの移行作業(subversionのリポジトリ移行も含む)を行いました。

今後、同じ作業をどこかでするかもしれませんので、忘れないようにメモ。

例として、

  • trac-projというtracプロジェクト
  • svnrepというsubversionリポジトリ

を別マシンに移行する場合を考えます。tracのDBはsqliteとします。

まず、移行元のマシンでtrac-projとsvnrepのバックアップを取ります。他ユーザのアクセスとバックアップが競合しないようにhotcopyコマンドを使ってロック+バックアップします。

$ trac-admin ~/trac/trac-proj hotcopy trac-backup
$ tar cvfz trac-backup.tar.gz trac-backup

$ svnadmin hotcopy ~/svn/svnrep svn-backup
$ tar cvfz svn-backup.tar.gz svn-backup

ディレクトリ位置は適当です。自分の環境に合わせて変更すること。

移行先に両tar.gzファイルを持って行き、展開。なお、リポジトリの位置が移行元と違う場合、移行先でtrac-proj/conf/trac.iniの修正が必要。

例えば、以下のような感じ。

repository_dir = /home/user/svn/svnrep
↓
repository_dir = /var/svn/svnrep

移行先tracのバージョンが移行元より新しい場合、以下コマンドを使ってtracプロジェクトの更新をしておく。

$ trac-admin trac-proj upgrade

apacheの設定とかに関しては、以下リンク先を参照 (Trac月プロジェクト*1における移行作業の話だけど、十分役に立ちます)

http://sourceforge.jp/projects/traclight/wiki/Install

なお、apache2.2より、httpd.conf内の”AuthDigestFile”が”AuthUserFile”に変わったので注意すること。

*1:Windows上にTracに必要なパッケージ(trac, apache, subversion等)をまとめて入れるソフトウェアの開発プロジェクト

tracプラグインとか

in Python, trac
by ginriki | 11 月 21st, 2007 

なぜか大学院の授業でtracのプラグインを作ることになった。

とりあえずプラグインのtutorialを見てたら、プラグインが表示するHTML用テンプレートの記述に “include header.cs”みたいなのを発見。

csファイル*1ってなんだよと思って調べてみたらClearSilverの略だと判明。

http://discypus.jp/wiki/?%A5%BD%A5%D5%A5%C8/Bug%20Tracking/tracを見たところ、

  • trac0.10 まではテンプレートエンジンとしてClearSilverを使ってる。ClearSilverはC言語で書かれている
  • trac0.11からはPythonで書かれているGenshiをテンプレートエンジンとして使う
    • ClearSilverがコンパイルできないような環境でもtracが使えるようにするため
    • ただ、これまでのプラグインも動作させるため、trac0.11でもClearSilverは使えるらしい

ということらしい。

ClearSilverとGenshiの記述上の違いは以下のサイトが参考になりそう。

http://trac.edgewall.org/wiki/TracDev/PortingFromClearSilverToGenshi

*1:C#のソースファイルではありません

ブログで紹介した商品

  • Image of デバッガの理論と実装 (ASCII SOFTWARE SCIENCE Language)