ruby - RVM 和 Jenkins 设置

标签 ruby ruby-on-rails-3 continuous-integration jenkins rvm

我是 Jenkins CI 的新手。我在我的远程 Jenkins 中安装 RVM,当我在 shell 下执行时。

#!/bin/bash -x
source ~/.bashrc
rvm use 1.9.3@rails-3.2.3

我收到以下错误。

+ source /var/lib/jenkins/.bashrc
++ PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/var/lib/jenkins/.rvm/bin:/var/lib/jenkins/.rvm/bin
+ rvm use 1.9.3@rails-3.2.3

RVM is not a function, selecting rubies with 'rvm use ...' will not work.
You need to change your terminal settings to allow shell login.
Please visit https://rvm.io/workflow/screen/ for example.

这是什么意思?我不知道。请帮助我。

更新:我尝试了以下脚本,但仍然出现错误:

#!/bin/bash -x
source /home/zeck/.bashrc
[[ -s ".rvmrc" ]] && source .rvmrc
export RAILS_ENV=test
bundle install

错误:

/tmp/hudson457106939700368111.sh: line 5: bundle: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILURE

Jenkins build shell 无法检测 RVM、gemsets 和 gem。我该怎么办?

更新 2: 因此 jenkins 无法检测到 ruby 。

+ ruby -v
/tmp/hudson2505951775163045158.sh: line 5: ruby: command not found
Build step 'Execute shell' marked build as failure
Finished: FAILUR

我没有使用任何 jenkins 插件,我只是从 Build->Execute shell 部分运行脚本。

最佳答案

如错误消息所示,RVM 需要一个登录 shell。将 hashbang 行更改为 #!/bin/bash -xl 应该可以解决此问题。

关于ruby - RVM 和 Jenkins 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10209242/

相关文章:

ruby-on-rails - Heroku RoR 应用程序的持续集成服务器

continuous-integration - Angular CLI VSO 持续集成

ruby-on-rails - Solr 部分文档索引更新

ruby-on-rails-3 - 使用延迟作业发送电子邮件时报告错误

ruby-on-rails - 需要 child 的 Rails 功能测试

c# - TeamCity:GhostscriptSharp:尝试加载格式不正确的程序。 (HRESULT 异常:0x8007000B)

ruby 1.9.2 运行 cucumber 规范时出现奇怪的警告

ruby - cucumber :后台失败仍然以代码 0 退出

python - 为什么我的 yaml 没有被正确解析?

ruby - 是否可以在 MiniTest 中运行单个测试?