我使用Jenkins和Appium的Ruby庫在OSX上設置CI環境。Jenkins,rbenv,bundler - 當使用Jenkins和rbenv時,rbenv插件如何預安裝捆綁器,爲什麼它不是我的情況?
我正在使用rake任務在RSpec中啓動我的測試套件。
使用類似的配置,我能夠在另一臺機器上使用Jenkins運行測試。我現在使用rbenv(和rbenv插件)並且有一些問題。
這裏就是我得到的,當我嘗試運行作業:
$ bash -c "[ -d \$HOME/.rbenv-jenkins ]"
$ bash -c "[ -d \$HOME/.rbenv-jenkins/plugins/ruby-build ]"
$ bash -c "cd /Users/Shared/Jenkins/Home/workspace/Tests && env RBENV_ROOT\=\$HOME/.rbenv-jenkins RBENV_VERSION\=2.2.5 CONFIGURE_OPTS\= RUBY_CONFIGURE_OPTS\= \$HOME/.rbenv-jenkins/bin/rbenv local 2>/dev/null || true"
Use local Ruby version 2.2.5.
$ bash -c "mkdir \$HOME/.rbenv-jenkins/.lock"
$ bash -c "env RBENV_ROOT\=\$HOME/.rbenv-jenkins RBENV_VERSION\=2.2.5 CONFIGURE_OPTS\= RUBY_CONFIGURE_OPTS\= \$HOME/.rbenv-jenkins/bin/rbenv versions --bare"
$ bash -c "env RBENV_ROOT\=\$HOME/.rbenv-jenkins RBENV_VERSION\=2.2.5 CONFIGURE_OPTS\= RUBY_CONFIGURE_OPTS\= \$HOME/.rbenv-jenkins/bin/rbenv rehash"
$ bash -c "env RBENV_ROOT\=\$HOME/.rbenv-jenkins RBENV_VERSION\=2.2.5 CONFIGURE_OPTS\= RUBY_CONFIGURE_OPTS\= \$HOME/.rbenv-jenkins/bin/rbenv exec gem list"
$ bash -c "env RBENV_ROOT\=\$HOME/.rbenv-jenkins RBENV_VERSION\=2.2.5 CONFIGURE_OPTS\= RUBY_CONFIGURE_OPTS\= \$HOME/.rbenv-jenkins/bin/rbenv rehash"
$ bash -c "rm -rf \$HOME/.rbenv-jenkins/.lock"
[Tests] $ bundle exec rake ios
FATAL: rake execution failed
java.io.IOException: Cannot run program "bundle" (in directory "/Users/Shared/Jenkins/Home/workspace/Tests"): error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at hudson.Proc$LocalProc.<init>(Proc.java:240)
at hudson.Proc$LocalProc.<init>(Proc.java:212)
等
好像有與沒有被捆綁的exec它應該是一個問題。
我已經嘗試添加 export PATH="$HOME/.rbenv-jenkins/bin:$PATH"
在幾個方面的路徑,但似乎不有所作爲 - 當它是一個配件臺階我看到它運行,但我沒有得到任何改變。
我有預裝耙和捆綁與我rbenv插件啓用的,但我不認爲他們得到安裝 - 我不知道爲什麼。
當我登錄到Jenkins用戶時,我可以通過rspec
,rake
和bundle exec rake
運行測試。
任何想法什麼沒有做它應該是什麼?如果有任何遺漏的細節,請告知我,謝謝!
編輯:
當我添加gem install bundle
和gem install rake
shell命令,我得到如下:
+ gem install bundler
Successfully installed bundler-1.13.2
Parsing documentation for bundler-1.13.2
Done installing documentation for bundler after 4 seconds
1 gem installed
+ gem install rake
ERROR: Error installing rake:
"rake" from rake conflicts with /Users/Shared/Jenkins/.rbenv-jenkins/versions/2.2.5/bin/rake
Build step 'Execute shell' marked build as failure
Finished: FAILURE
我的預安裝寶石rake,bundler
- 但似乎只耙得到正確預裝。
運行,而無需安裝耙的工作(並與所述捆綁安裝以下的rbenv翻版),我得到了同樣的錯誤。