BitNami Redmine に Backlogs プラグインをいれてみた

BitNami Redmine 入れましょう

すっかりアジャイルサムライに感化されてしまったのか、このままじゃイカン!
てことで、家PCにRedmine&Backlogsプラグインをインストールしてみた。

一番お気楽な方法ってことで、BitNamiのRedmineスタックを採用。

http://bitnami.org/images/bitnami-logo.png
公式サイト http://bitnami.org/ja/stack/redmine から、Installer Free Download っていうデカいアイコンを押すと、
2.0.2のフルパッケージのインストーラがダウンロードできるので、それを起動してインストールを始めます。

インストール開始


言語選択で日本語を選ぶと、途中文字化けして辛いので、英語で進めるほうが良いでしょう。

ちなみに、日本語でインストールすると、左画面みたいな目に遭いますが、英語(右)だとちゃんと表示される模様。
 
メール送信サポートのダイアログだったんですな…。
これはわかんねぇよwww

ただし、↓の画面でDBで使う言語は日本語にしておきましょう。

ちなみに、後述の ruby DevKit のインストールでハマるので、インストール先はデフォルトの c:\Program Files\Bitnami Redmine から、
C:\Bitnami とかにしておきます。
"Program Files"とかの、スペースを旨く捌ききれないというショボンヌなことになるぞっと。

BitnamiRedmine 2.0.x系の罠

巷では、まだ2.0.x系の記事は少なめってことで、ググって出てくるような所のやりかたでインスコするとやられます。

1つめの罠 1.4.x と 2.0.x だと、Redmineのインストール場所が変わっている

これ、Bitnami Redmineスタックの仕様変更なのか、Redmine 2.0.x系の仕様変更なのかは不明だが、

  • 1.4.x : [installpath]\apps\redmine\
  • 2.0.x : [installpath]\apps\redmine\htdocs

となっているので、Redmineを弄る系のRubyスクリプト走らせるときは、後者のパスに読み替えないとダメ。
普通に中身を見てたりすれば間違えないが、なーんも考えずにネットの通りやろうとすると間違える。

2つめの罠 2.0.xはプラグインを置く場所が変わっている

Redmine 2.0.x系になってから、Rails 3.2系を使うようになったため、今までの vendor/plugins ディレクトリに入れると、↓みたいなエラーがでて動かないor不具合が生じる。

DEPRECATION WARNING: You have Rails 2.3-style plugins in vendor/plugins! Support for these plugins will be removed in Rails 4.0. Move them out and bundle them in your Gemfile, or fold them in to your app as lib/myplugin/* and config/initializers/myplugin.rb. See the release notes for more on this: http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released. (called from C:/bitnami/apps/redmine/htdocs/Rakefile:7)
Plugins in vendor/plugins (C:/bitnami/apps/redmine/htdocs/vendor/plugins) are no longer allowed. Please, put your Redmine plugins in the `plugins` directory at the root of your Redmine directory (C:/bitnami/apps/redmine/htdocs/plugins)

なので、プラグインのインストール先はこういう風に変わってますヨっと。

  • 1.4.x : [installpath]\apps\redmine\vendor\plugins
  • 2.0.x : [installpath]\apps\redmine\htdocs\plugins

環境変数の設定

後々やらなきゃイケナイので、先にやっておきましょう。

RAILS_ENV=production
PATH=c:\bitnami\ruby\bin;c:\bitnami\imagemagick(既存のモノに追加)

Ruby Development Kit のインストール

OSに依存したライブラリーをWindows環境にインストールする為のツールもインストール。
現時点での最新版は、↓のファイルでokのようだ。
https://github.com/downloads/oneclick/rubyinstaller/DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe

ファイル直リンなので最新版は、ココから探るべし。
ファイル解凍パスは c:\bitnami\ruby\devkit にした

C:\bitnami\ruby\devkit>ruby dk.rb init
Initialization complete! Please review and modify the auto-generated
'config.yml' file to ensure it contains the root directories to all
of the installed Rubies you want enhanced by the DevKit.

このとき、dk.rb で使うconfig.yml が生成されるが、パスがあってるかを確認しておく
config.yml の末尾に BitNamiでインストールされた Ruby のパスを通しておく。
例) - c:/bitnami/ruby

で、DevKitのインストール

C:\bitnami\ruby\devkit>ruby dk.rb install
[INFO] Updating convenience notice gem override for 'C:/bitnami/ruby'
[INFO] Installing 'C:/bitnami/ruby/lib/ruby/site_ruby/devkit.rb'

これでおk。

Redmine-BackLogsを入れる

ようやく、お目当てである、Redmine-BackLogs のインストール。

公式サイトはココだが、パッケージはgithubにて公開されている。
https://github.com/backlogs/redmine_backlogs から、ZIPでおkボタンを押すと取得できる。

今の最新版は v0.9.13 backlogs-redmine_backlogs-v0.9.13-9-g760632b.zip の模様。
これを c:\bitnami\apps\redmine\htdocs\plugins\redmine_backlogs に展開する。

まずは環境を整える

そのまま入れると、rake の依存関係が見つからない的なエラーが出るので
c:\bitnami\apps\redmine\htdocs\Gemfile を編集。

最初のほうにある gem .... の羅列に、gem 'rake' を追加

source 'http://rubygems.org'
gem "thin"
gem 'rails', '3.2.5'
gem 'prototype-rails', '3.2.1'
gem "i18n", "~> 0.6.0"
gem "coderay", "~> 1.0.6"
gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby]
gem "builder"
gem 'rake'     << これ

よし、これでパッケージインストールですよ、っと。

C:\bitnami\apps\redmine\htdocs>bundle install --without development test
Fetching source index for http://rubygems.org/
Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "gherkin":
  In Gemfile:
    cucumber (>= 1.1.8) ruby depends on
      gherkin (~> 2.8.0) ruby

    gherkin (2.6.8)

んが、こんな風に言われて、gherkin のバージョンが合わないとか言われます。

仕方ないので、必要とされている、2.8.0をインストール。

C:\bitnami>gem install gherkin -v 2.8.0
Fetching: gherkin-2.8.0-x86-mingw32.gem (100%)
Successfully installed gherkin-2.8.0-x86-mingw32
1 gem installed
Installing ri documentation for gherkin-2.8.0-x86-mingw32...
Building YARD (yri) index for gherkin-2.8.0-x86-mingw32...
Installing RDoc documentation for gherkin-2.8.0-x86-mingw32...

これだけだと、gherkin のバージョン指定をがっちりとやってしまってる backlogs がインストールできないので、
c:\bitnami\apps\redmine\htdocs\plugins\redmine_backlogs\Gemfile の 36行目あたりを

    gem "gherkin", "=2.6.8"
->  gem "gherkin", "=2.8.0"

とかってバージョンをごまかしておく。

もう一度、インストールを実行して、エラーが出なければ完了!

C:\bitnami\apps\redmine\htdocs>bundle install --without development test
もう一つ必要なパッケージである holidays をインスコ

でも、1.0.4以降のインストーラに問題があるらしく、一度古いのを入れてから最新版を入れます。

C:\bitnami\apps\redmine\htdocs>gem install holidays -v 1.0.3

エラーがでなければ、引き続き最新版(v1.0.5)を入れましょう。
C:\bitnami\apps\redmine\htdocs>gem install holidays

そして、どうやらおまじないであるらしい、こいつらを叩いておく。

C:\bitnami\apps\redmine\htdocs>bundle exec rake db:migrate
C:\bitnami\apps\redmine\htdocs>bundle exec rake tmp:cache:clear
C:\bitnami\apps\redmine\htdocs>bundle exec rake tmp:sessions:clear
ようやくbacklogsのセットアップ
C:\bitnami\apps\redmine\htdocs>bundle exec rake redmine:backlogs:install

2.0.2.stable (unsupported but might work, 'official' support is for 1.4)
=====================================================
             Redmine Backlogs Installer
=====================================================
Installing to the production environment.
Fetching card labels from http://git.gnome.org...Skipping malformed label 'Avery 7161' from avery-iso-templates.xml
Skipping malformed label 'Avery 8666' from avery-iso-templates.xml
Skipping malformed label 'Avery 6141' from avery-other-templates.xml
Skipping malformed label 'Brother DK-11201' from brother-other-templates.xml
Skipping malformed label 'Brother DK-11202' from brother-other-templates.xml
Skipping malformed label 'Brother DK-11204' from brother-other-templates.xml
Skipping malformed label 'Brother DK-11208' from brother-other-templates.xml
Skipping malformed label 'Dymo 99012' from dymo-other-templates.xml
Skipping malformed label 'Dymo 99010' from dymo-other-templates.xml
Skipping malformed label 'Dymo 11355' from dymo-other-templates.xml
Skipping malformed label 'Dymo 99014' from dymo-other-templates.xml
Skipping malformed label 'Dymo 30327' from dymo-other-templates.xml
Skipping malformed label 'Dymo 30376' from dymo-other-templates.xml
Skipping malformed label 'Dymo 30258' from dymo-other-templates.xml
Skipping malformed label 'Hema Etiketten' from misc-iso-templates.xml
Skipping malformed label 'OfficeMax 86112' from misc-other-templates.xml
Skipping malformed label 'Zweckform 3490' from zweckform-iso-templates.xml
Skipping malformed label 'Zweckform 32010' from zweckform-iso-templates.xml
done!

無事にセットアップが完了した模様。
長かった…。

backlogsの初期設定

ここでも日本語環境だと文字化けが。最初の3択はどのトラッカーに対してストーリー入力を可能にさせるかの質問。デフォルトで登録されている、バグ、機能、サポートが化けて表示される。後からでも編集できるハズなので、とりあえず、「1 2 3」と全選択しておく。
途中で、backlogsで発行するタスクカードのチケットトラック種別を聞かれるが、日本語で入れると文字化けして登録され、トンデモないことになるので、英語で「Task」とかにしておきましょう。

Configuring story and task trackers...
-----------------------------------------------------
Which trackers do you want to use for your stories?
  1. 繝舌げ        ←バグ
  2. 讖溯・        ←機能
  3. 繧オ繝昴・繝   ←サポート
Separate values with a space (e.g. 1 3): 1 2 3
You selected the following trackers: 繝舌げ, 讖溯・, 繧オ繝昴・繝・ Is this correct? (y/n) y
-----------------------------------------------------
Creating a new task tracker.
Please type the tracker's name: Task  ←当然日本語入れても化ける
You typed 'Task'. Is this correct? (y/n) y
Story and task trackers are now set.
Migrating the database...** Invoke redmine:plugins:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute redmine:plugins:migrate
** Invoke redmine:backlogs:fix_positions (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute redmine:backlogs:fix_positions
done!
Installation complete. Please restart Redmine.
Thank you for trying out Redmine Backlogs!

ようやくインストール完了!

起動してみよう

サービス再起動

起動するには、一度BitNamiのサービス類を再起動させる必要がある。

C:\bitnami\apps\redmine\htdocs>serviceinstall.bat STOP
(5個ぐらい開くDOS窓のタスクがすべて消えるまで待ってから、サービス再開)
C:\bitnami\apps\redmine\htdocs>serviceinstall.bat START

このとき、Vista以降の環境のDOS窓だと管理者権限がないのでサービスの操作ができないので注意。
CMD.EXEを管理者として実行すれば大丈夫。

ブラウザで確認

ブラウザで、http://localhost/redmine とかすると、Redmine が立ち上がると思うので、
http://localhost/redmine/admin/plugins とかやって、プラグイン管理画面にいって、
このように、Redmine Backlogs がインスコされていれば成功!


お疲れ様でした。(いや、マジで!