Frage

Weiß jemand, wie ich es sagen kann? Capistrano meinen Standard verwenden RVM Version von Ruby für auf dem Server, auf den ich drücke. Es besteht darauf, die Systemversion zu verwenden.

Ist es überhaupt möglich?

War es hilfreich?

Lösung

Das rvm-capistrano Juwel ist der beste Weg zu gehen.

Link zur offiziellen detaillierten Verwendung dieses Juwel. Ich vermute, dies wird die lokale Version von Ruby bekommen:

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

Andere Tipps

Sie haben zwei Optionen:

  1. Aktivieren Sie die Variablen. PermitUserEnvironment Option in Ihrer SSH -Konfigurationsdatei
  2. Verwenden Sie den Capistrano :default_environment Einstellung

Fügen Sie für die zweite Option einfach die folgende Zeile in Ihre Datei bereit.rb.RB hinzu

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' 
}

Um die genauen Orte zu erhalten, sehen Sie sich einen Blick auf cat ~/.rvm/default

Wenn Ihre RVM -Version sowohl auf Entwicklungs- als auch auf Produktionsmaschinen kürzlich zu Ihrem bereitgestellt wird. 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

Sehen http://rvm.io/integration/capistrano/. "Integration über das RVM Capistrano Plugin" sieht aus wie ein Gewinner.

Und http://rvm.io/deployment/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top