エラー内容 その1
+ rvm use
/tmp/hudson1166277874546094993.sh: line 3: rvm: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE
JenkinsのRVMプラグインやJenkinsサーバへRVMをインストールしているにもかかわらず上記エラーが発生する。
以下のログが出力されているし、RVMは認識されてるはずだと思うのだが、自作のシェルはRVMを認識してくていない。
[workspace] $ bash -c " source /usr/local/rvm/scripts/rvm && rvm use --install --create 1.9.3 && export > rvm.env"
Using /usr/local/rvm/gems/ruby-1.9.3-p429
よくよく調査してみると、PATHにRVMが追加されていなかった。なんで?
+ env
~(省略)~
PATH=/sbin:/usr/sbin:/bin:/usr/bin
エラー内容 その2
PATHにRVMのパスを追加してみたが、今度は別のエラーが発生した。が、RVMは認識してくれるようにはなった。
+ PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/rvm/bin
+ export PATH
+ rvm use
RVM is not a function, selecting rubies with 'rvm use ...' will not work.
You need to change your terminal emulator preferences to allow login shell.
Sometimes it is required to use `/bin/bash --login` as the command.
Please visit https://rvm.io/integration/gnome-terminal/ for a example.
対処方法
デフォルトのシェルはshで動作するため、.bashrc等の読み込みができていなかったみたい。なので、bashで起動するためシバン(#!/bin/bash)を追加してあげればOK。あとは、.bash_profileの読み込みを追加。
#!/bin/bash
source ~/.bash_profile
bundle install
p.s.
これに1週間悩み苦しみました・・・。