Ho un'app per rails che utilizza Mongoid 3 in esecuzione su Heroku. L'ho appena aggiornato per usare Unicorn. Quando provo a distribuirlo a Heroku ottengo il seguente errore:L'unicorno innesca l'errore mongoid durante l'asset precompilato
Running: rake assets:precompile
rake aborted!
undefined method `match' for nil:NilClass
/tmp/build_3nnbzpfmnjpns/vendor/bundle/ruby/1.9.1/gems/mongoid-3.0.21/lib/mongoid/sessions/mongo_uri.rb:49:in `initialize'
La piena stacktrace è disponibile all'indirizzo http://pastebin.com/8YcJHEmS
Ma se tolgo dalla mia Unicorn Gemfile, la compilazione beni riesce. Esaminando il codice Mongoid, posso vedere che l'errore si verifica quando il file mongoid.yml viene analizzato, ma non riesco a capire perché Unicorn causerebbe il fallimento. Il mio file mongoid.yml simile a questo:
production:
sessions:
default:
uri: <%= ENV['MONGOHQ_URL'] %>
options:
skip_version_check: true
safe: true
E il mio Gemfile:
source 'https://rubygems.org'
ruby '1.9.3'
gem 'rails', '3.2.11'
gem 'thin'
group :assets do
gem 'sass-rails', '~> 3.2'
gem 'coffee-rails', '~> 3.2'
gem 'uglifier', '>= 1.0.3'
gem "twitter-bootstrap-rails", '>=2.1.8'
gem "bootstrap_form"
end
gem "jquery-rails"
gem 'jquery-ui-rails', "3.0.1"
gem 'newrelic_rpm'
gem "httparty"
gem "resque"
gem "resque-loner"
gem "unicorn", "4.4.0"
gem "mongoid", "~> 3.0.0"
gem "mongo", "~> 1.7.0"
gem "bson", "~> 1.7"
gem "bson_ext", "~> 1.7"
gem 'less-rails', "~> 2.2"
gem 'therubyracer', '>= 0.11.1'
gem 'libv8', '~> 3.11.8'
gem 'devise', '~> 2.1.2'
gem 'devise_invitable', '~> 1.0.0'
gem 'bootstrap_form'
gem 'font-awesome-rails'
gem 'omniauth'
gem 'omniauth-facebook'
gem 'kaminari'
gem 'mongoid_search'
Avreste qualche idea di cosa sta causando questo?
Questo l'ha risolto, grazie! – AdrienF
Strano però, ho commentato quella linea * out * e per me continua a fallire. –
Apparentemente questo non è più supportato in Rails 4.0 (si dice che non è necessario) e sembra che stia ricevendo questo errore. –