如果使用jenkins和ssh执行脚本,则无法识别fpm

时间:2015-10-07 09:05:16

标签: jenkins ssh

我正在尝试使用Jenkins通过ssh connexion执行脚本。我正在使用SSH plugin并且配置得很好。我到达执行脚本的第一部分,但当我尝试执行fpm命令时,它说:

fpm: command not found

如果我连接到实例并运行我通过Jenkins调用的相同脚本,则运行并且没有错误(安装了fpm)。

所以,我创建了一个类似脚本test.sh的测试:

#!/bin/bash -x 
fpm

但是,对于Jenkins,我得到了同样的错误:fpm: command not found,而如果我执行它,我会得到一个正常的“参数”:

Missing required -s flag. What package source did you want? {:level=>:warn}
Missing required -t flag. What package output did you want? {:level=>:warn}
No parameters given. You need to pass additional command arguments so that I know what you want to build packages from. For example, for '-s dir' you would pass a list of files and directories. For '-s gem' you would pass a one or more gems to package from. As a full example, this will make an rpm of the 'json' rubygem: `fpm -s gem -t rpm json` {:level=>:warn}
Fix the above problems, and you'll be rolling packages in no time! {:level=>:fatal}

我错过了什么?为什么在安装时找不到fpm?

2 个答案:

答案 0 :(得分:1)

确保fpm在/ usr / bin中。

答案 1 :(得分:0)

似乎问题出现是因为fpm中安装了/home/user2connect/bin/,并且无法识别该命令。为了解决这个问题,我不得不把它称为整个路径:

/home/user2connect/bin/fpm ...

我选择使用fpm重新安装sudo,所以现在可以了。