Jenkins 无法识别本地命令

Jenkins won't recognize local commands

我正在尝试将我的 Ruby/Cucumber/Appium 测试框架与我们的 Jenkins 环境集成。

在本地机器上,我安装了 RVM 以利用 ruby 2.4,最新的 appium,cucumber,我正在尝试使用已经安装的 ruby gem 来完成我的 jenkins 作业。

如何让 Jenkins shell 使用我的本地 RVM 实例?我不想每次 运行 工作时都必须安装 rvm、cucumber 和 appium。

我已经尝试在 Jenkins 设置中添加环境变量,但它仍然无法识别我的命令。

请注意,我的管理员已删除自动生成的 jenkins 用户。

您可能想要 "Execute shell" 中的类似内容:

#!/bin/bash

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"  # This loads RVM into a shell session.
rvm use 2.4
bundle install
bundle exec rake

你提到你的 jenkins 用户不见了。上面假设在用户 运行 你的构建的 $HOME 目录中有一个 rvm 设置,所以如果不确定,或者你不知道哪个用户正在执行你的构建,你可能想要从那里开始,echo $USER,依此类推,看看 rvm 是否适用于 jenkins 构建之外的该用户。