Jenkins multibranch插件和RVM

时间:2016-06-13 18:40:04

标签: ruby jenkins rvm

我正在尝试将RVM与jenkins multibranch插件一起使用。我一直遇到RVM未找到的问题。我想这可能是因为jenkins用户没有真正的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"

当我提交更改并且构建运行时,我收到此错误:

/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?

提前致谢!

1 个答案:

答案 0 :(得分:2)

有一种方法可以确保使用登录shell执行所有shell命令,这解决了我的问题:

sh '''#!/bin/bash -l
rvm use 2.2.1@my-project
bundle install
etc...
'''