J'ai une petite application web, qui utilise un tas de gemmes. Certains d'entre eux sont uniquement utilisés pour les environnements test
et development
. Maintenant, lorsque j'essaie de démarrer licorne sur le serveur de production à l'aide de la commande suivante, il échoue.bundler essayant incorrectement d'installer des gemmes de groupe "développement" et "test" en production
unicorn_rails -E production -D -c config/unicorn.rb
L'erreur que je vois dans les fichiers journaux est:
Refreshing Gem list
Could not find gem 'spork (>= 0.9.0.rc2, runtime)' in any of the gem sources listed in your Gemfile.
Try running `bundle install`.
J'ai collé mon Gemfile ci-dessous:
source 'http://rubygems.org'
gem 'rails', '3.0.1'
gem 'unicorn'
gem 'mongoid', '>= 2.0.0.beta.19'
gem 'devise'
gem 'cancan'
gem 'haml', '>= 3.0.0'
gem 'bson'
gem 'bson_ext'
gem 'formtastic'
gem 'bluecloth'
group :production do
gem 'capistrano'
end
group :development do
gem 'haml-rails'
gem 'hpricot', '0.8.2'
gem 'ruby_parser', '2.0.5'
gem 'less'
gem 'rspec-rails', '>= 2.0.1'
end
group :development,:test do
gem 'spork', '>=0.9.0.rc2'
gem 'mongoid-rspec'
end
group :test do
gem 'factory_girl_rails'
gem 'autotest'
gem 'cucumber-rails'
gem 'cucumber'
gem 'capybara'
gem 'shoulda'
gem 'database_cleaner'
gem 'test_notifier'
gem 'rspec', '2.0.1'
gem 'launchy'
end
Bundler est censé détecter l'environnement droit et ignorer la d'autres gemmes, non? En ce moment, je supprime toutes les lignes qui ne sont pas dans le groupe par défaut sur le serveur pour que cela fonctionne, mais c'est un hack moche.
Capistrano dans la production ne semble pas? –