rake db:migrate_plugins RAILS_ENV=production fails with "no such file to load -- initializer"

I'm running Redmine on Ruby, and attempting to load a new plugin. When I
attempt to run the command:

rake db:migrate_plugins RAILS_ENV=production

It fails with this error:

rake aborted!
no such file to load -- initializer
/var/www/redmine/config/boot.rb:65:in `require'
/var/www/redmine/config/boot.rb:65:in `load_initializer'
/var/www/redmine/config/boot.rb:43:in `run'
/var/www/redmine/config/boot.rb:16:in `boot!'
/var/www/redmine/config/boot.rb:124
/var/www/redmine/Rakefile:4
(See full trace by running task with --trace)

I am a sysadmin and not overly familiar with Ruby or Rails, and
attempting to get this up for our developers. I've been googling all
morning and had no success.

I can provide gem list output if required.

Ruby version:
ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux],
MBARI 0x8770, Ruby Enterprise Edition 2012.02

Rails version:
3.2.11

Redmine version:
1.4.4

thank-you

I'm running Redmine on Ruby, and attempting to load a new plugin. When I
attempt to run the command:

It's diagnostically irrelevant to mention that you "installed a new
plugin" and not provide that plugin name and how you went about doing
it.

rake db:migrate_plugins RAILS_ENV=production

You should really set that inside of the env permanently rather than
raking with it in the line, you are asking for mistakes to be made if
you don't enforce it on the server.

It fails with this error:

rake aborted!
no such file to load -- initializer
/var/www/redmine/config/boot.rb:65:in `require'
/var/www/redmine/config/boot.rb:65:in `load_initializer'
/var/www/redmine/config/boot.rb:43:in `run'
/var/www/redmine/config/boot.rb:16:in `boot!'
/var/www/redmine/config/boot.rb:124
/var/www/redmine/Rakefile:4
(See full trace by running task with --trace)

Are you sure Rails is installed? Also, the backtrace leads you right
to the file.

I am a sysadmin and not overly familiar with Ruby or Rails, and
attempting to get this up for our developers. I've been googling all
morning and had no success.

Why are you doing your developers debugging?

Jordon Bedwell wrote in post #1095584:

It's diagnostically irrelevant to mention that you "installed a new
plugin" and not provide that plugin name and how you went about doing
it.

rake db:migrate_plugins RAILS_ENV=production

You should really set that inside of the env permanently rather than
raking with it in the line, you are asking for mistakes to be made if
you don't enforce it on the server.

Are you sure Rails is installed? Also, the backtrace leads you right
to the file.

Hi Jordan, thanks for the reply. I'll attempt to provide the information
you asked for.

1. The plugin is called "code review" (
http://www.redmine.org/plugins/codereview ) and I installed it to the
/vendor/plugins directory along with the other plugins, as per the
instructions.

2. When I say I'm not familiar with Ruby, I mean 0%. How can I enforce
production on the server?

3. Output of rake with --trace:
(in /var/www/redmine)
rake aborted!
no such file to load -- initializer
/var/www/redmine/config/boot.rb:65:in `require'
/var/www/redmine/config/boot.rb:65:in `load_initializer'
/var/www/redmine/config/boot.rb:43:in `run'
/var/www/redmine/config/boot.rb:16:in `boot!'
/var/www/redmine/config/boot.rb:124
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in
`gem_original_require'
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in
`require'
/var/www/redmine/Rakefile:4
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in
`load'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in
`load_rakefile'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:583:in
`raw_load_rakefile'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:89:in
`load_rakefile'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:160:in
`standard_exception_handling'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:88:in
`load_rakefile'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:72:in
`run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:160:in
`standard_exception_handling'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:70:in
`run'
/usr/local/lib/ruby/gems/1.8/gems/rake-10.0.3/bin/rake:33
/usr/local/bin/rake:19:in `load'
/usr/local/bin/rake:19

4. Company politics.

5. Finally, yes, rails is installed, please read my initial post.
Version 3.2.11

Jordon Bedwell wrote in post #1095584:
1. The plugin is called "code review" (
http://www.redmine.org/plugins/codereview ) and I installed it to the
/vendor/plugins directory along with the other plugins, as per the
instructions.

It only works with Redmine 2 you'll either need to install an older
version of the plugin (and hope it has no security issues or read the
changelogs) or upgrade your Redmine.

2. When I say I'm not familiar with Ruby, I mean 0%. How can I enforce
production on the server?

Put it in both your ~/.bashrc|~/.zshrc and the user that Redmin runs as file.

RACK_ENV="production"
RAILS_ENV=$RACK_ENV

4. Company politics.

Tell them Devops :slight_smile:

5. Finally, yes, rails is installed, please read my initial post.
Version 3.2.11

Rails 3.2.11 does not work with Redmine 1.4, that is a Rails 2.3
application. Your post also indicates you are 1.4.4 you need to be on
1.4.7 considering there was a CVE that was recently fixed. That said,
my suggestion is if this is a new install move to 2.x branch with
Rails 3 instead of using the older branch on an unsupported version of
Rails.

Jordon Bedwell wrote in post #1095589:

It only works with Redmine 2 you'll either need to install an older
version of the plugin (and hope it has no security issues or read the
changelogs) or upgrade your Redmine.

I guess I assumed the plugin would be backwards compatible with
older versions of Redmine, but I guess not.

Put it in both your ~/.bashrc|~/.zshrc and the user that Redmin runs as
file.

RACK_ENV="production"
RAILS_ENV=$RACK_ENV

Will do.

Tell them Devops :slight_smile:

Will try.

Rails 3.2.11 does not work with Redmine 1.4, that is a Rails 2.3
application. Your post also indicates you are on Redmine 1.4.4 you need > to be
on 1.4.7 considering there was a CVE that was recently fixed. That
said,
my suggestion is if this is a new install move to 2.x branch (of Redmine) with
Rails 3 instead of using the older branch on an unsupported version of
Rails.

The Ruby/Rails/Redmine stack is running on a pre-built TurnKey Linux VM
appliance. I did upgrade Rails to 3.2.11, but it was originally 2.3.14.
Since the entire VM stack (Debian 6, Ruby 1.8.7, Rails 2.3.14, Redmine
1.4.4) came out of the box ready to go, I will first try an older plugin
version, before doing an entire stack upgrade just for the sake of a
single plugin.

For future Googlers, these are the solutions I'll attempt, in this
order:

1. Try an older version of the "code review" plugin, one that is
compatible with Redmine v1.4.x. If that fails, then:

2a. Upgrade Rails from 2.3.14 --> 3.2.11
2b. Upgrade Redmine from 1.4.4 --> 2.2.2
2c. Install the latest version of the "code review plugin"

3. If both of the above steps fail, I'll build a new VM from scratch,
and key the cars of our devs :wink:

Thanks for your help Jordan. I'll post back the results for future
reference.

Just an update to this for future reference, option #1 (installing an
older version of the plugin) worked. Hopefully this helps someone in the
future.