データ移行方法

概要

ここでは、0.7から0.8へのデータの移行法について説明します。 データを移行の流れは、以下のようになります。

  1. 影舞 0.7 の動作確認
  2. bin/migrate.rb を設定する
  3. bin/migrate.rb を実行してデータを移行
  4. 移行したデータのパーミッションを変更

migrate.rb によって、プロジェクトの設定と、バグのレポートのデータが 0.8 用に取り込まれます。ただし、kagemai.rhtml のカスタマイズなどは取り込まれません。 0.8 へ移行後、必要に応じてカスタマイズしてください。

影舞 0.7 の動作の確認

0.8 をインストールする際に、0.7 がインストールされてたディレクトリの名前を変更した場合には、 そのままでは 0.7 が動作しなくなっています。

global.rb の RootDir と、kagemai.rhtml の kagemai_root を修正し、 0.7 が動作することを確認してください。

migrate.rb の設定

migrate.rb の以下の変数を設定する必要があります。 0.8 をインストールしたディレクトリにあわせて、修正してください。

kagemai_root 影舞 0.8 の lib ディレクトリがあるディレクトリ。
kagemai.rb が、/usr/local/kagemai/lib/kagemai/kagemai.rb にある場合には、/usr/local/kagemai と指定する。
config_file kagemai.conf のパス。
/var/www/html/kagemai/kagemai.conf など。
old_lib 影舞 0.7 の global.rb のあるディレクトリ。

install_ja.rb でインストールした場合には、old_lib 以外はすでに正しい値が設定済みです。

データの移行

migrate.rb を実行します。 必要な変数がすべて設定されていれば、0.7 に登録されていたすべてのプロジェクトのデータが 0.8 に移行されます。

レポート数 100 のプロジェクト test1 と、レポート数 45 の test2、 レポート数 5000 の test3、 レポート数 10000 の test4 がある場合の実行例を示します。

レポート数が多い場合には、それなりに時間がかかります。

  $ ./migrate.rb
  OLD VERSION = 0.7.1
  extracting test1(100 reports)
  ..
  extracting test2(45 reports)
  .
  extracting test3(5000 reports)
  ..............................................................................
  ......................
  extracting test4(10000 reports)
  ..............................................................................
  ..............................................................................
  ............................................
  
  NEW VERSION = 0.8.0 (Youko)
  migrate test1
  ..
  migrate test2
  .
  migrate test3
  ..............................................................................
  ......................
  migrate test4
  ..............................................................................
  ..............................................................................
  ............................................

パーミッションの設定

パーミッションを正しく設定しないと、 新規レポートやメッセージの追加ができない可能性があります。 0.8 のプロジェクトディレクトリを確認して、必要であればパーミッションを変更してください。

  # chgrp -R kagemai project
  # chmod -R 02770 project