忍者ブログ
想いとグチの吐き出し場

RedmineImporterプラグイン

こちらも意外とwebに情報が転がってなくて
というか情報が散乱してて苦戦したのでメモ。

Redmineにチケットをインポートしたいのだが
ExcelRedmineAddinはインポートできる項目が限られてるらしい。
そこでRedmineImporterPluginをインストールしようとして
ドハマリ。

ポイントは
  • 「redmineのバージョン」と「プラグインの種類」の整合性をとること。
  • 「routes.rb」を修正すること。
みたい。

・整合性について。
 redmineは現在進行形で発展(バージョンアップ)中。
 プラグインは、たくさんの人が作成していていろんな種類(作者)のものがある。
 この組み合わせを上手く選ばないと動かない。
 下手するとインストールしたことすら認識されない。

・routes.rbについて。
 プラグインが不完全なのか、上記の組み合わせが悪いのか、
 プラグインを有効化したとたんinternal errorが出る(ことがある?)。
 routes.rbを修正して対応したんだけど、これに気付くための情報が
 なかなか拾えなかった。

と、御託はいいから、はよ手順を、ということで。

【環境情報】
【手順】
  • redmineのインストール
sudo ./bitnami-redmine-1.4.4-0-linux-installer.run
  後はウィザードに従って。
  細かいことを気にしなければ特に難しいことなし。
  • fasterCSVのインストール
tar xvzf fastercsv-1.5.1.tgz
cd fastercsv-1.5.1
sudo ruby setup.rb
  特に難しいことなし。
  • RedmineImporterPluginのインストール
unzip leovitch-redmine_importer-c65c222.zip
mv leovitch-redmine_importer-c65c222 redmine_importer
sudo chown -R root:root redmine_importer
sudo mv redmine_importer /opt/redmine-1.4.4-0/apps/redmine/htdocs/vendor/plugins/
sudo su -
cd /opt/redmine-1.4.4-0/apps/redmine/htdocs/vendor/plugins/redmine_importer
export PATH=/opt/redmine-1.4.4-0/ruby/bin:$PATH
rake db:migrate_plugins RAILS_ENV=production --trace
/opt/redmine-1.4.4-0/apache2/bin/apachectl restart
  ポイントは以下。
  • ディレクトリ名を「redmine_importer」にすること。
  • その「redmine_importer」ディレクトリをどこに移動するか。
       これはredmineのバージョンによって違う。
       redmine2.0は /opt/redmine-2.0.3-1/apps/redmine/htdocs/lib/plugins/ かな?
       ワカラン。
  • migrate(DBの更新?)をするときは、all-in-one Redmineでインストールされたrubyを使う。
  • routes.rbの修正
cd /opt/redmine-1.4.4-0/apps/redmine/htdocs/config
cp -p routes.rb routes.rb.org
vi routes.rb
27行目あたりに以下を追加する。
map.connect '/importer/index', :controller => 'importer', :action => 'index'
map.connect '/importer/match', :controller => 'importer', :action => 'match'
map.connect '/importer/result', :controller => 'importer', :action => 'result'
んで、apacheの再起動。
/opt/redmine-1.4.4-0/apache2/bin/apachectl restart
  • RedmineImporterPluginの有効化
    • redmineにログインして「管理」→「プラグイン」
         ⇒「issue importer」が出ていること(インストールが完了したこと)を確認する。
    • redmineにログインして「管理」→「ロールと権限」→「権限レポート」
         ⇒インポートを行いたいユーザのロールにimport権限をつける。
    • 「プロジェクト」→[プロジェクト選択]→「設定」→「モジュール」
         ⇒「Importer」をON
routes.rbを直しておかないと、ここでinternal error(500)になる。

ちなみにRedmineImporterプラグインは注意事項がいくつかある。
  • 改行を含むデータはインポートできない。
  • 日付フォーマットは'yyyy-mm-dd'じゃないとダメ。
  • 4KB以上のファイルはインポートできない(ことが多い)。
       できることもある。
       バグかな。

まぁそんなこんなで全項目をインポートできるまでには至ってない。


。。。って。
ここに辿り着くまで1週間。

つまり。

redmineのチケット(の一部の項目)をインポートできるようになるだけで1週間。

こんなんを普通にやれるredmineユーザってやっぱすごいわ。


オレニハ ムリダ。

PR