Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

redmine deploy on heroku cedar

I've been banging my head against the wall trying to deploy redmine 2.0.3 on heroku cedar.

I had lots of problems with deploying with sqlite gem so I removed all sqlite references from my Gemefile, deleted Gemfile.lock, ran bundle install, and happily pushed to heroku.

I ran heroku run rake db:migrate and I browsed to my app ( http://blooming-river-8784.herokuapp.com/ ) and I see the following:

UPDATE!! -> when I run heroku run rake db:migrate I get the following warning messages:

Running rake db:migrate attached to terminal... up, run.1
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 <top (required)> at /app/Rakefile:7)
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 <top (required)> at /app/Rakefile:7)
Plugins in vendor/plugins (/app/vendor/plugins) are no longer allowed. Please, put your Redmine plugins in the `plugins` directory at the root of your Redmine directory (/app/plugins)

Application Error
An error occurred in the application and your page could not be served. Please try again in a few moments.
If you are the application owner, check your logs for details.

I checked the logs and I see the following message:

2012-07-12T01:34:47+00:00 heroku[run.1]: Starting process with command bundle exec rake db:migrate  
2012-07-12T01:34:47+00:00 heroku[run.1]: State changed from starting to up  
2012-07-12T01:34:53+00:00 heroku[run.1]: Process exited with status 1  
2012-07-12T01:34:53+00:00 heroku[run.1]: State changed from up to complete
2012-07-12T01:36:03+00:00 heroku[router]: Error H10 (App crashed) -> GET blooming-river-8784.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=

I googled this last line without sucess. so that's why I'm posting here hoping somebody will help :)

Here is my Gemfile

source 'http://rubygems.org'

gem 'rails', '3.2.6'  
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"  

# Optional gem for LDAP authentication
group :ldap do  
  gem "net-ldap", "~> 0.3.1"  
end  

# Optional gem for OpenID authentication  
group :openid do  
  gem "ruby-openid", "~> 2.1.4", :require => "openid"  
  gem "rack-openid"  
end  

# Database gems  
platforms :mri, :mingw do  
  group :postgresql do  
    gem "pg", ">= 0.11.0"  
  end  
end  

platforms :jruby do  
  gem "jruby-openssl"  

  group :postgresql do  
    gem "activerecord-jdbcpostgresql-adapter"  
  end  
end  

group :development do  
  gem "rdoc", ">= 2.4.2"  
  gem "yard"  
end  

group :test do  
  gem "shoulda", "~> 2.11"  
  gem "mocha"  
end  

local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local")  
if File.exists?(local_gemfile)  
  puts "Loading Gemfile.local ..." if $DEBUG # 'ruby -d' or 'bundle -v'
  instance_eval File.read(local_gemfile)  
end  

# Load plugins' Gemfiles  
Dir.glob File.expand_path("../plugins/*/Gemfile", __FILE__) do |file|  
  puts "Loading #{file} ..." if $DEBUG # 'ruby -d' or 'bundle -v'  
  instance_eval File.read(file)  
end 
like image 627
Alejandro Lozdziejski Avatar asked Jul 12 '12 02:07

Alejandro Lozdziejski


2 Answers

I was experimenting the same issue.

The problem comes from here:

https://github.com/redmine/redmine/commit/6fca0289055fae8f066eeb493a590b35e6f26cc0

Looks like the warning for new plugins is not just a warning, it exits the app. It doesn't matter if you don't have any plugins in app/vendor/plugins, because heroku is adding them when you push (in my case it was adding rails_log_stdout, rails31_enable_runtime_asset_compilation and rails3_serve_static_assets).

The easiest fix for now is to comment or remove the "exit 1" line in config/environment.rb. Looks like everything is working fine. I guess this warning&exit is just some kind of hard deprecation warning, but the code can still run with these plugins.

like image 104
bfcapell Avatar answered Nov 16 '22 09:11

bfcapell


I've written post in my blog about how to deploy redmine 2 to heroku step by step: how to deploy redmine to heroku

like image 1
ka8725 Avatar answered Nov 16 '22 10:11

ka8725