ポジローぽけっと

昨日より今日、今日より明日を信じて、トライトライ

RedmineでPluginを入れるのにハマった件

自宅でRedmineの勉強をしようと意気込んで、
導入してたらPluginの導入でハマった。

導入はBitnami Redmine Stackでしました。

目的:チケットのテンプレートを作りたい!

調べると、Issue Templateが使えそうだ。。

  • Issue Templateを以下からダウンロード。

http://www.redmine.org/plugins/issue_templates

解凍したフォルダ内のREADME.rdocにプラグインの入れ方は書いてある。

=== Plugin installation

  1. Copy the plugin directory into the vendor/plugins directory. Please note that plugin’s folder name should be "redmine_issue_templates". If changed, some migration task will be failed.
  2. Do migration task. e.g. rake db:migrate_plugins RAILS_ENV=production e.g. rake redmine:plugins:migrate RAILS_ENV=production (For Redmine 2.x)
  3. (Re)Start Redmine.

上記に従い、

プラグインを以下に入れる。

C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs\plugins

vendor/pluginsでないのは、以下を参照。

http://d.hatena.ne.jp/daidai7/20120609/1339269876

移植タスクをする。

$ rake redmine:plugins:migrate RAILS_ENV=production

これハマった。ruby知らん知らん知らんよー。

Q:rakeコマンドって何?

A:Rakeは、MakeをRubyで実装したものを超越したビルドツールである。

http://www2s.biglobe.ne.jp/~idesaku/sss/tech/rake/#intro

Q:どこで実行するの?

A:Use Bitnami Redmine Stackで実行する。

 Windowsキー押下後のプログラムとファイル検索で「Use Bitnami Redmine Stack」を実行すると、コマンドプロンプトが開く。

そこで実行する。ここまで気づくのも大変だったが、この後も大変だった。

  • rakeの実行
$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake redmine:plugins:migrate RAILS_ENV=production
rake aborted!
You have already activated rake 0.9.2.2, but your Gemfile requires rake 10.1.1.
Prepending `bundle exec` to your command may solve this.

バージョンが低い?!。本当に?

14.08.03追記:↓ここから

rake … じゃなくて bundle exec rake … とすると良かったと思います。前者だと Ruby 本体の gem が使われますが、後者だと Redmine 配下の gem が使われます。エラーメッセージにも出てますね。

上記コメントもらいました。ヒャー、修正します。orz

マジだ、Prepending bundle exec to your command may solve this.って書いてあるじゃないか。

以下のごにょごにょはいらなかったはずなんだな。あざます。

ログを読もうログを。これが仕事だったらスッコスコにされてた、逆の立場ならしてたね、ええ。

14.08.03追記:↑ここまで

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake --version
rake, version 0.9.2.2

あらまぁ。じゃあ、上げよう。

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>gem update rake
Updating installed gems
Updating rake
Fetching: rake-10.3.1.gem (100%)
Successfully installed rake-10.3.1
Updating rake-compiler
Fetching: rake-compiler-0.9.2.gem (100%)
ERROR: Error installing rake-compiler:
rake-compiler requires RubyGems version >= 1.8.25. Try 'gem update --system' to update RubyGems itself.
Gems updated: rake
Installing ri documentation for rake-10.3.1...
Installing RDoc documentation for rake-10.3.1...

compilerがあやしいけど。。

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake --version
rake, version 10.3.1

いけるんじゃね?

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake redmine:plugins:migrate RAILS_ENV=production
rake aborted!
Gem::LoadError: You have already activated rake 10.3.1, but your Gemfile requires rake 10.1.1.
Prepending `bundle exec` to your command may solve this.
C:/Bitnami/redmine-2.5.1-1/apps/redmine/htdocs/config/boot.rb:8:in `<top (required)>'
C:/Bitnami/redmine-2.5.1-1/apps/redmine/htdocs/config/application.rb:1:in `<top(required)>'
C:/Bitnami/redmine-2.5.1-1/apps/redmine/htdocs/rakefile:5:in `<top (required)>'
(See full trace by running task with --trace)

10.1.1じゃないとだめみたいだ。

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>gem uninstall rake --version 10.3.1
Successfully uninstalled rake-10.3.1

じゃあ、アンインストールして

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>gem install rake --version 10.1.1
Fetching: rake-10.1.1.gem (100%)
Successfully installed rake-10.1.1
Installing ri documentation for rake-10.1.1
1 gem installed

再インストール!さぁ、これでいけるだろ!

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake redmine:plugins:migrate RAILS_ENV=production
rake aborted!
Can't connect to MySQL server on '127.0.0.1' (10061)

ありゃりゃ、作業するのにBitnamiのサーバをStopさせてたから怒られたっぽい。

Startさせて、もう一回。

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>rake redmine:plugins:migrate RAILS_ENV=production
Migrating redmine_issue_templates (Redmine Issue Templates plugin)...
== CreateIssueTemplates: migrating ===========================================
-- create_table(:issue_templates) -> 0.0150s
-- add_index(:issue_templates, :author_id) -> 0.0110s
-- add_index(:issue_templates, :project_id) -> 0.0090s
-- add_index(:issue_templates, :tracker_id) -> 0.0090s
== CreateIssueTemplates: migrated (0.0490s) ==================================

== CreateIssueTemplateSettings: migrating ====================================
-- create_table(:issue_template_settings) -> 0.0100s
== CreateIssueTemplateSettings: migrated (0.0140s) ===========================

== AddIssueTitleToIssueTemplates: migrating ==================================
-- add_column(:issue_templates, :issue_title, :string) -> 0.0140s
== AddIssueTitleToIssueTemplates: migrated (0.0300s) =========================

== AddPositionToIssueTemplates: migrating ====================================
-- add_column(:issue_templates, :position, :integer, {:default=>1}) -> 0.0160s
== AddPositionToIssueTemplates: migrated (0.0220s) ===========================

== AddShouldReplacedToIssueTemplateSettings: migrating =======================
-- add_column(:issue_template_settings, :should_replaced, :boolean, {:default=>false}) -> 0.0110s
== AddShouldReplacedToIssueTemplateSettings: migrated (0.0140s) ==============

== AddIsDefaultToIssueTemplates: migrating ===================================
-- add_column(:issue_templates, :is_default, :boolean, {:default=>false}) -> 0.0200s
== AddIsDefaultToIssueTemplates: migrated (0.0230s) ==========================

== AddEnabledSharingToIssueTemplates: migrating ==============================
-- add_column(:issue_templates, :enabled_sharing, :boolean, {:default=>false}) -> 0.0130s
== AddEnabledSharingToIssueTemplates: migrated (0.0140s) =====================

== AddInheritTemplatesToIssueTemplateSettings: migrating =====================
-- add_column(:issue_template_settings, :inherit_templates, :boolean, {:default=>false, :null=>false}) -> 0.0240s
== AddInheritTemplatesToIssueTemplateSettings: migrated (0.0280s) ============

== CreateGlobalIssueTemplates: migrating =====================================
-- create_table(:global_issue_templates) -> 0.0040s
-- add_index(:global_issue_templates, :author_id) -> 0.0210s
-- add_index(:global_issue_templates, :tracker_id) -> 0.0170s
== CreateGlobalIssueTemplates: migrated (0.0460s) ============================

== CreateGlobalIssueTemplatesProjects: migrating =============================
-- create_table(:global_issue_templates_projects, {:id=>false}) -> 0.0110s
== CreateGlobalIssueTemplatesProjects: migrated (0.0110s) ====================

== RemoveIsDefaultFromGlobalIssueTemplates: migrating ========================
-- remove_column(:global_issue_templates, :is_default) -> 0.0060s
== RemoveIsDefaultFromGlobalIssueTemplates: migrated (0.0070s) ===============

$ C:\Bitnami\redmine-2.5.1-1\apps\redmine\htdocs>

正常に終わったー!!

最後にBitnamiのサーバをRestartする。

で、で、できた。けど、しんどくない?

Redmineってツールですよね。ツールの機能拡張すんのに、こんなにしんどいのか。。

自分がへたれなのか、利用者がマッチョなのか。。