redmine に google calendar plugin を追加した

debian squeeze で redmine を動かしてみた - まにっき

の続き

インストール

cd ~/public_html/redmine/vendor/plugins 
git clone git://github.com/mully/redmine_google_calendar.git redmine_google_calendar

よく調べていないけど、以下のファイルを修正する。
~/public_html/redmine/vendor/plugins/redmine_google_calendar/init.rb

load_paths.each { |p| Dependencies.load_once_paths.delete(p) }

↓↓

load_paths.each { |p| ActiveSupport::Dependencies.load_once_paths.delete(p) }

多分、debian の apt 版 rails のバージョンが旧いのだと思われる。

redmine 再起動

Google Calendar 向けに rake しないといけないらしい。
ここ debian squeeze で redmine を動かしてみた - まにっきredmine-server を参考にして環境変数も整える。

kill $(cat ~/public_html/redmine/tmp/pids/server.pid)
rake -f Rakefile db:migrate:plugins 

そして再起動。

redmine-server

設定

以下を参考にした。
http://www.redmine.org/boards/1/topics/72

Google Calendar を開いて

  1. 設定 -> カレンダー設定 -> カレンダー tab
  2. redmine に表示したいカレンダーを選ぶと「このカレンダーを埋め込む」というセクションがあるので iframe のコードをコピーする。

redmine に戻って

  1. プロジェクト -> 目的のプロジェクト -> 設定タブ -> モジュールタブ
  2. Google Calendar モジュールを選択し保存する。
  3. 管理 -> プラグイン -> Google Calendar Plugin の設定
  4. 上部に書いてある説明を読む。今は何もしない。
  5. 管理 -> カスタムフィールド -> プロジェクト
  6. 先の手順に書いてあった通り(英語) 「長いテキスト」で 「Google Calendar」 というフィールドを作成
  7. 管理 -> プラグイン -> Google Calendar Plugin の設定
  8. 上で追加したフィールドを選択して「適用」
  9. プロジェクト -> 目的のプロジェクト -> 設定タブ
  10. Google Calendar という項目が出現しているはずなので Google Calendar でコピーした iframe のコードを貼り付ける。

これで Google Calendar タブにカレンダーが表示されるようになっているはず。

Redmine -> iCal -> Google Calendar

redmine から ical で出力できるようにしてみた。

cd ~/public_html/redmine/vendor/plugins
svn co http://redmics.googlecode.com/svn/trunk/ redmine_ics_export

~/public_html/redmine/log/production.log によると ruby の icalendar ライブラリがないらしいので、rubyforge から適当に探してきて、RUBYLIB 環境変数のところにインストール。

Google Calendar に既存のスケジュールを import。これでもちろん Redmine からも import したスケジュールが見えるようになる。

総括

orz

なんと iframe の中の Google Calendar さんはドラッグドロップもできないし、カレンダーからスケジュールも作成できないし、使い勝手が平凡な子になってしまいました。嗚呼!
ここの最後 Redmine 感想 - まにっき に書いた問題点はいまいち解決できていません。

Google Calendar の使い易さは捨て難いので Google Calendar で大雑把にスケジュール登録して、細かい情報は redmine のチケットで管理する感じの運用にするかなぁ。
URL を相互リンクする感じにして。。めんどくさいな。

プロジェクト管理の方法も、プログラミングと同じく、最初に決めた方法を頑なに守るんじゃなく使い方憶えるに従って発展させてくべきだよね。なんて言ってみる。