web-dev-qa-db-ja.com

.rvmrcの確認をスキップすることはできますか?

Rubyのインストールと環境を管理するために [〜#〜] rvm [〜#〜] を使用しています。

通常、この.rvmrcスクリプトを使用しています。

#!/bin/bash
if [ ! -e '.version' ]; then
  VERSION=`pwd | sed 's/[a-z/-]//g'`
  echo $VERSION > .version
  rvm gemset create $VERSION
fi
VERSION=`cat .version`
rvm use 1.9.2@$VERSION

このスクリプトにより、RVMはプロジェクト/バージョンごとに新しいgem環境を作成します。

しかし、新しいバージョンを展開するたびに、RVMはnew.rvmrcファイルの確認を求めてきます。

初めてこのディレクトリにcdすると、次のようになります。

 ============================================= ================== 
 =通知:= 
 ================== ============================================= 
 = RVMは、信頼できない.rvmrcファイルを= 
 =現在の作業ディレクトリで検出しました。これには、厄介なコードが含まれている可能性があります。 = 
 = = 
 =このファイルの内容を調べて、内容を信頼する前に= 
 =正しいことを確認してください! = 
 = = 
 =ファイルの読み取りが終了したら、「q」を押してリーダーを終了します= 
 ================= ============================================== 
 
(準備ができたらEnterキーを押して続行します)

これは開発環境にとってそれほど悪いことではありませんが、自動デプロイでは、各サーバーで新しいバージョンを手動で確認する必要があります。

この確認をスキップすることはできますか?

16

これらのメモはWaynesブログで見つかりました http://wayneeseguin.beginrescueend.com/

基本的に、追加:

export rvm_trust_rvmrcs_flag=1

~/.rvmrcはチェックをバイパスします。

もあります rvm rvmrc <command> [dir]手動で信頼する/信頼しない.rvmrcファイル。

同じことを探しているので、解決策を投稿すると思いました。

HTH

よろしく、

フィル

24
PhilT

私の展開では、.rvmrcを使用しません。 rvm use 1.9.2 --defaultそのように私はa;私のデフォルトのRubyが1.9.2であり、この特定のディレクトリにいない場合は別のものではないことを確認してください。

オプションrvm_project_rvmrc=0あなたのrvmrcで、他にRubyが使用されていないことを確認してください。

3
shingara
$ curl -L https://get.rvm.io | bash -s -- --version 1.16.20

$ rvm --version

rvm 1.16.20 (version) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]

$ grep less .rvm/scripts/cli .rvm/bin/rvm-installer .rvm/src/rvm/scripts/cli .rvm/src/rvm/binscripts/rvm-installer
.rvm/scripts/cli:            } | less
.rvm/bin/rvm-installer:    } | less
.rvm/src/rvm/scripts/cli:            } | less
.rvm/src/rvm/binscripts/rvm-installer:    } | less

修正:

$ sed -i 's/ | less//' .rvm/scripts/cli .rvm/bin/rvm-installer .rvm/src/rvm/scripts/cli .rvm/src/rvm/binscripts/rvm-installer
0
victor

代替であるが予期しない出口0には複数の実行が必要

例えば両方をインストールするRuby(元のrvmインストールを変更せずに)実行を繰り返します

#!/bin/bash
rvm list | grep ree-1.8.7-2011.12 ||
(  
    rvm install ree-1.8.7-2011.12 &  
    expect "^Press 'q' to continue."  
    send "q\n"
    exp_continue
)

rvm list | grep Ruby-1.9.3-p194 ||
(
    rvm install Ruby-1.9.3-p194 &
    expect "^Press 'q' to continue."
    send "q\n"
    exp_continue
)
0
victor