Redmineを使う(その2)

投稿者: | 2017年1月3日

新年明けましておめでとうございます。
今年もOutputしていけたらなと思っております。今年は、OSSのコミュニティに何か貢献できたらと考えている次第です。

さて、年末年始の休みと言えば、格好のサンデープログラミングの機会と言うわけで、いろいろと試してみようかと言うことで、懸案になっていたRedmineのチケットをgoogleカレンダーに表示する件、またいろいろと調べて見たところ

redmine google calendar synchronization

というプラグインを発見した。
調べて見たところ最近のRedmineでも対応しているみたいである。では試しに入れてみようと言うことになり、まずは開発用に展開したwindows版から試してみようとことでセットアップをしてみた。

  1. プラグインフォルダに行ってgit cloneでもらってくる。
  2. redmineのフォルダまで戻ってbundle install
  3. DBがあるので、DBをmigrateする
  4. apacheを再起動

でとりあえずインストールは完了である。

設定画面が出てきて一安心。ただここからが難題出会った。googleから認証コードを入れなければならない。この情報が足りなかったのだ。まず、google developer consoleに行き、google calender APIを有効にする。クライアントID、クライアントシークレットを取るところまでは、簡単であった。しかし、最後、OAuth2.0のトークン(認証コード)を取得しなければならない。

redminはwebサーバ上で動いているので、webサービスで取ろうとすると、そのような設定にredirect URIが必要になる。しかしredmineにredirect URIなぞと言うものは存在しない。いろいろ設定してもredirect URIが違うとgoogleさんに怒られる始末。途方に暮れていたところ、ウィザード形式でトークンを作るものが、その中にはchromeのプラグインとかwindowsアプリなどほかのものもあった。ソースの中のコードを確認したところ

urn:ietf:wg:oauth:2.0:oob

なものを発見。これはアプリケーションの様にwebのポートを使えない時に使う認証コードの形式を示すことがわかり、「その他のUI(windows CLIツールなど)」にするとredirect URIを入力せずにクライアントID、クライアントシークレットがとれ、アプリにこれらを入力すると認証コードが取得でき、設定が完了できた。

使ってみると、チケットを設定すると、googleカレンダーの設定しているカレンダーにタスクが設定できる。すばらしい。これを求めていたのさ。ただ、英語とフランス語の言語ファイルがあったのだが、日本語の言語ファイルがない。railsを触っているので、この日本語ファイルを作るのは意図もたやすそうである。とりあえず作ってみようかなと思う今日この頃である。

今年は、具体的に進めていく年になりそうなので、頑張っていきたい。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です