RVMバージョンのRubyを使用するようにCapistranoを構成するにはどうすればよいですか

StackOverflow https://stackoverflow.com/questions/1978797

  •  22-09-2019
  •  | 
  •  

質問

誰かが私がどのように伝えることができるか知っていますか カピストラーノ 私のデフォルトを使用するには RVM 私がプッシュしているサーバー上のRubyのバージョン。システムバージョンの使用を主張します。

それも可能ですか?

役に立ちましたか?

解決

rvm-capistrano 宝石 行く最良の方法です。

その宝石の公式の詳細な使用にリンクします. 。それから、これがRubyのローカルバージョンを取得すると推測しています:

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

他のヒント

2つのオプションがあります。

  1. を使用して.SSH環境変数を有効にします PermitUserEnvironment SSH構成ファイルのオプション
  2. Capistranoを使用してください :default_environment 設定

2番目のオプションについては、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' 
}

正確な場所を取得するには、見てみましょう cat ~/.rvm/default

開発マシンと生産マシンの両方でRVMバージョンが最近である場合、これを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

見る http://rvm.io/integration/capistrano/。 「RVM Capistranoプラグインを介した統合」は、勝者のように見えます。

http://rvm.io/deployment/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top