Trac Lightning 2.4系からTrac Lightning 3.0.8にアップグレード

TracTrac Lightningは非常に重宝しています。ホント感謝です!

そんなTrac Lightning を 2.4系からTrac Lightning 3.0系にアップグレードのテストをした際にSubversionでコミットするとエラーメッセージが表示される(でも、コミット出来てる)というのとrefsなどのコマンドが動作しない現象が発生したんですが、その解決策をSourceForge で tecnos_kaneda様に教えていただきました。超感謝です。そこで自宅のTracもバージョンアップしてみましたので画面を貼りまくります。


チケット #24143: Trac Lightning 2.x から移行したプロジェクトのpost-commit-hookエラーについて - Trac Lightning - SourceForge.JP
ちなみに、自宅のTracでも事前にこのエラーが発生するかどうかを確認し忘れました。ただ、対応手順から考えるとたぶん2.x系から3.0系にアップグレードする際には発生するんじゃないかなぁと思います。

 Trac Lightning のSourceForge でも「TracLightning2.xをお使いの場合で、特に不満がない場合はアップグレードをお勧めしません」って書いてありますが、チケットのコメントを修正する機能とタイムラインのソート機能などはかなり便利なのでどうしてもアップグレードしたかったので実施してみました。自宅のTracTrac Lightning 2.xから使い始めましたが、会社のTrac LightningはAll-In-One Tracからの移行しているので、その辺りも記憶を頼りに追記してみます。

 ということでこんな感じで実施。プロジェクト名は Home 、 インストールフォルダは D:\TracLight です。



1.スタート メニューから「プログラム」-「Trac」-「バックアップ」をクリックして、現行のTracのバックアップをします。
バックアップが完了したら、インストールフォルダ配下にbackupフォルダがありますので、デスクトップにコピーします。

ちなみに、All-In-One TracからTrac Lightningに移行している場合は、認証がBASIC認証になっていると思います。このバックアップではBASIC認証用のファイルがバックアップされないと思いますので、認証用のファイル(htpasswd)は手動で現行のTracフォルダ(デフォルトはC:\TracLight)配下のprojectsからデスクトップのbackupフォルダにコピーします。

2.「コントロールパネル」の「プログラムの追加と削除」から「Trac Lightning」を選択してアンインストールします。

3.インストール時に指定した現行のTracのインストールフォルダを削除します。(デフォルトはC:\TracLight)

4.Trac Lightning Wiki - SourceForge.JPからTrac Lightningの3.0系最新版を感謝しつつダウンロードします。インストールフォルダは2.x系と同じにします。(デフォルトはC:\TracLight)

5.インストールが進んでいきます。

6.インストールが完了すると再起動の確認画面が表示されますので、再起動を行います。

7.デスクトップに待避したbackupフォルダから「svnauthz」「trac.htdigest」をTracのインストールフォルダ配下のprojectsに上書きコピーします。

All-In-One TracからTrac Lightningに移行している場合は、「htpasswd」ファイルも一緒にコピーします。

8.デスクトップに待避したbackup\svnフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\svnフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。

複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。

9.デスクトップに待避したbackup\tracフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\tracフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。

複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。

10.スタート メニューから「プログラム」-「Trac」-「コマンドプロンプト」をクリックします。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 upgrade と入力して、実行します。

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

11.wikiもアップグレードするように表示されましたので、続けて以下のコマンドを入力します。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 wiki upgrade

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

12.Tracのインストールフォルダ配下のprojects\svn\SampleProject\hooks以下の11個のファイルをすべてをTracのインストールフォルダ\projects\svn\プロジェクト名\hooks に上書きコピーをします。

複数プロジェクトがある場合は、全てのプロジェクトのフォルダにもコピーします。

13.手順12でコピーしたpost-commit.batを選択して右クリックの「編集」をクリックします。3行目の PROJECT= の後を SampleProject から該当プロジェクト名に修正して上書き保存します。今回はHomeに修正しています。
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

14.Tracのインストールフォルダ\projects\trac\各プロジェクト\confにあるtrac.iniファイルをUTF-8に対応したエディタで開きます。
Windowsのメモ帳は対応していません。

15.TracLightning2.xからTracLightning3.0.xへのアップグレードの注意の手順に沿ってticket-customの日付フィールドを上書き修正をして、保存します。

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

 なお、All-In-One TracからTrac Lightningに移行している場合は、All In One Tracからの移行の「Apacheの設定(httpd.conf)をBasic認証を利用するように変更します。」以下にあるようにD:\TracLight\CollabNetSVN\httpd\confにあるhttpd.confファイルをDigest認証からBasic認証にするように変更します。

 以上でバージョンアップ完了です。Trac Lightningを起動して下さい。

16.ログインして、以前の情報が引き継げているか確認して下さい。

17.SubversionSVNコミットが問題なく行きました。refsなども正しく動作しています。

18.カレンダーのポップアップも正しく表示されました。

 SampleProjectを移行したい場合は、プロジェクトの移行後に他のプロジェクトからhooksフォルダ以下をコピーして下さい。
といった感じで、おそらく上手くバージョンアップできたようです。