Jenkins 执行远程服务器上的Shell脚本,返回成功 但是脚本中有些内容并未执行
首先将SSH配置未控制台打印,不然只是返回成功,但是并不知道出现问题的具体原因。
可以看到控制台输出执行Shell的错误
npm: command not found
由于Jenkins服务器资源有限,所以只是将Jenkins作为触发Shell脚本的一个工具,并没有在Jenkins服务器上执行构建操作。之前在目标服务器执行,配有node环境变量的。所以并无此问题。Jenkins执行时会在Jenkins配置中找所以不识别。
这里处理的方式是在Shell脚本中重新加载环境变量
source /etc/profile
这样Jenkins执行时就可以找到环境变量。
也可以在Jenkins全局配置中再配置一个环境变量,对应目标服务器的node变量。
问题解决,记录。