【问题标题】:macOS Jenkins uses system ruby instead of installed rubymacOS Jenkins 使用系统 ruby​​ 而不是安装的 ruby
【发布时间】:2018-06-17 14:23:42
【问题描述】:

客户端在 macOS 机器上安装了 jenkins。它正在做 iOS 构建并使用捆绑器来安装一些 gem。一个 gem 最近开始需要依赖,而依赖又需要 ruby​​ >= 2.1

Installing jwt 2.1.0
Gem::InstallError: jwt requires Ruby version >= 2.1.
An error occurred while installing jwt (2.1.0), and Bundler cannot continue.

首先,我在 macOS 机器上安装了 rvm 和 ruby​​ 2.1.0

osxbuildserver:~ jenkins$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin14.0]

对于 ssh 登录用户,它显示得很好。问题是即使是强悍的 Jenkins 也在同一个 jenkins 用户下运行

root            15102     1 15102      0    0 Ss     ??    0:00.04 sshd: jenkins [priv] 
jenkins         15106 15102 15102      0    0 S      ??    0:00.03 sshd: jenkins@ttys000

它仍然使用 2.0.0 的系统 ruby​​。在其中一个版本中,我添加了一个带有 ruby -v

的 shell 脚本
[EnvInject] - Variables injected successfully.
[workspace] $ /bin/sh -xe     /var/folders/6v/xlw3p2pn47d2jl_jghf25dn00000gr/T/hudson73325394438439334.sh    
+ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

打电话

ssh jenkins@osxbuild "echo $PATH"

从我的本地机器,返回不正确的路径

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

但是用同一个用户登录没问题

osxbuildserver:~ jenkins$ echo $PATH
/Users/jenkins/.rvm/gems/ruby-2.1.0/bin:/Users/jenkins/.rvm/gems/ruby-2.1.0@global/bin:/Users/jenkins/.rvm/rubies/ruby-2.1.0/bin.... etc

我已经尝试过Jenkins using System Ruby - use rvm ruby?这里的答案,但没有帮助。

我的 .bash_profile 内容

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home
export ANDROID_HOME=/Users/jenkins/Library/Android/sdk
export ANDROID_SDK=$ANDROID_HOME
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$JAVA_HOME
export TESSDATA_PREFIX=$HOME/tesseract-ocr

source ~/.profile
source $HOME/.rvm/scripts/rvm

【问题讨论】:

  • 你的.bash_profile有source $HOME/.rvm/scripts/rvm这行吗?
  • 不是。我添加了它并重新启动,但没有帮助。我将使用 .brash_profile 的内容更新问题
  • 添加该行后必须重新登录
  • 我重启了机器,没有用。

标签: ruby macos jenkins rvm


【解决方案1】:

这个问题已经很老了,但可能有人会使用我的解决方案。 我复制了所有给我echo $PATH的东西。然后我打开 Jenkins 的配置,找到“全局属性”。 我添加了 PATH 并作为我从终端添加的值。

【讨论】:

    猜你喜欢
    • 2014-10-18
    • 2020-08-06
    • 2013-05-25
    • 2015-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多