Était-ce utile?

La solution

Le rvm-capistrano joyau est la meilleure façon d'aller.

Lien vers l'utilisation officielle détaillée de cette gemme. A partir de ce que je suis devine que ce sera obtenir la version locale de Ruby:

set :rvm_ruby_string, ENV['GEM_HOME'].gsub(/.*\//,"") # Read from local system

Autres conseils

Vous avez deux options:

  1. Activer .ssh variables d'environnement à l'aide de l'option PermitUserEnvironment dans votre fichier de configuration ssh
  2. Utilisez le réglage Capistrano de :default_environment

Pour la deuxième option, il suffit d'ajouter la ligne suivante dans votre fichier deploy.rb

set :default_environment, { 
  'PATH' => "/path/to/.rvm/ree-1.8.7-2009.10/bin:/path/to/.rvm/gems/ree/1.8.7/bin:/path/to/.rvm/bin:$PATH",
  'RUBY_VERSION' => 'ruby 1.8.7',
  'GEM_HOME' => '/path/to/.rvm/gems/ree/1.8.7',
  'GEM_PATH' => '/path/to/.rvm/gems/ree/1.8.7' 
}

Pour obtenir les emplacements précis ont un regard sur cat ~/.rvm/default

Si votre version RVM est récente sur les deux machines de développement et de production ajouter à votre deploy.rb:

set :rvm_ruby_string, '1.9.2@yourapp' # you probably have this already
set :rvm_type, :user # this is the money config, it defaults to :system

Voir http://rvm.io/integration/capistrano/ . "L'intégration via le plug-in Capistrano de RVM" ressemble à un gagnant.

http://rvm.io/deployment/

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top