概要
Redmineで作成したチケットの情報を、外部のGoogleカレンダーに表示したいと思いました。
調べてみると、そのようなことをできるプラグインがありました。
ここでは、そのプラグインのインストール方法と使い方を紹介します。
環境
- Redmine 5.0.2
- redmics
チケットをカレンダーに表示する方法
Redmineでは、イシューやタスクをチケットという名前で登録できます。
このチケットには、開始日や期日を設定する事ができます。
私は、Redmineをタスク管理として利用しているのですが、そのようなタスクをカレンダーにも表示したくなりました。Redmine自体にもカレンダー機能があるのですが、なるべく予定管理をしている外部のカレンダー(Googleカレンダー)を利用したいと思っています。
しかし、このような外部のカレンダーでチケットを表示する機能は、Redmineにはありません。
そこで、今回私はプラグインを利用して実現することにしました。
redmine_ics_exportでは、チケットの情報をカレンダーの連携でよく使われる、iCalendar形式でエクスポートできるようにします。そのため、Googleカレンダーだけでなく、iCalendar形式でのカレンダー情報をインポートできるカレンダーアプリやサービスで、Redmineのチケットを表示できます。例えば、AppleのiCloudカレンダーなどがあります。
プラグインのインストール
redmine_ics_exportをRedmineにインストールします。インストールには、Redmineを動かしているサーバーにアクセスできる権限が必要です。
サーバーにアクセス後、次のようにコマンドを実行します。<Redmineのディレクトリ>の部分は、それぞれの環境に合わせて変更してください。
cd <Redmineのディレクトリ>/plugins
git clone https://github.com/buschmais/redmics.git redmine_ics_export
cd ..
bundle install --without development test
redmine_ics_exportでは、プラグインに依存するgemのインストールをする必要があります。そのため、bundle installを実行しています。
プラグインのインストールに成功すると、Redmineの管理画面のプラグインで、次のように表示されます。
これでインストールは終わりです。
外部カレンダーとの連携
redmine_ics_exportでは、プロジェクトのチケット一覧画面のメニューにカレンダーとの連携用のリンクが表示されます。
英語で書かれているため意味が少し分かりにくいです。私は、「All issues」をGoogleカレンダーの「設定」>「カレンダーを追加」>「URLで追加」から追加しています。
Googleカレンダーの場合、Redmineでのチケットの追加や修正をすると、定期的にURLをクローリングしますので、タイムラグがありますが修正がカレンダーにも反映されます。
さいごに
プラグインを導入しなければならないため、少し面倒でしたが、外部のカレンダーにもチケットの情報を表示できるようになりました。
チケットをカレンダーに表示したいと思っている方々の参考になれば嬉しいです。