2011-04-20 4 views
0

Je veux déployer une application rails sur un serveur, où la configuration suivante est donnée.Déploiement de Rails avec capistrano et bundler

Systemwide installé est rubis et rubygems. En tant qu'utilisateur, j'ai installé bundler et ajouté ~/.gems/bin au chemin.

à l'intérieur du Capfile i mis bundle_cmd à l'installation locale comme

de la coquille de bouchon
set :bundle_cmd, "/home/user/.gems/bin/bundle" 

appel "paquet" me donne l'erreur suivante

/usr/lib/ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem bundler (>= 0) (Gem::LoadError) 
/usr/lib/ruby/1.8/rubygems.rb:214:in `activate' 
/usr/lib/ruby/1.8/rubygems.rb:1082:in `gem' 
/home/user/.gems/bin/bundle:18 

Toutes les idées? Ok, je pourrais installer bundler en tant que root mais est-ce possible sans?

Répondre

1

Le problème est que l'interpréteur de commandes ne reçoit pas vos paramètres de bashrc comme GEM_HOME ou le chemin de bundler.

Je l'ai essayé avant avec

source .bashrc && bundle 

mais cela n'a pas l'affaire pour moi.

set :bundle_cmd, "export GEM_HOME=/home/user/.gems;export PATH=$PATH:/home/user/.gems/bin && bundle" 

fonctionne bien.

Questions connexes