Jenkins 多分支插件和 RVM
Jenkins multibranch plugin and RVM
我正在尝试将 RVM 与 jenkins 多分支插件一起使用。我一直 运行ning 遇到 RVM 未找到的问题。我想这可能是因为詹金斯用户没有真正的 shell.
我使用 sudo su -s /bin/bash jenkins
然后按照 RVM 安装说明安装了 RVM。
我的 Jenkins 文件使用:
sh 'source ~/.bashrc'
sh 'rvm use 2.2.1@my-project'
bashrc 文件如下所示:
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
当我提交更改并构建 运行s 时,出现此错误:
/var/lib/jenkins/workspace/Chalk Web/develop@tmp/durable-27a33a52/script.sh: line 2: rvm: command not found
如果我通过 ssh 连接到机器,并且 运行 sudo su -s /bin/bash jenkins
命令我可以 运行 RVM 正常。但是,我假设 jenkins 在 运行 构建时没有登录 shell。如何让 Jenkins 看到 RVM?
提前致谢!
有一种方法可以确保所有 shell 命令都通过登录 shell 执行,这解决了我的问题:
sh '''#!/bin/bash -l
rvm use 2.2.1@my-project
bundle install
etc...
'''
我正在尝试将 RVM 与 jenkins 多分支插件一起使用。我一直 运行ning 遇到 RVM 未找到的问题。我想这可能是因为詹金斯用户没有真正的 shell.
我使用 sudo su -s /bin/bash jenkins
然后按照 RVM 安装说明安装了 RVM。
我的 Jenkins 文件使用:
sh 'source ~/.bashrc'
sh 'rvm use 2.2.1@my-project'
bashrc 文件如下所示:
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
当我提交更改并构建 运行s 时,出现此错误:
/var/lib/jenkins/workspace/Chalk Web/develop@tmp/durable-27a33a52/script.sh: line 2: rvm: command not found
如果我通过 ssh 连接到机器,并且 运行 sudo su -s /bin/bash jenkins
命令我可以 运行 RVM 正常。但是,我假设 jenkins 在 运行 构建时没有登录 shell。如何让 Jenkins 看到 RVM?
提前致谢!
有一种方法可以确保所有 shell 命令都通过登录 shell 执行,这解决了我的问题:
sh '''#!/bin/bash -l
rvm use 2.2.1@my-project
bundle install
etc...
'''