【Jenkins】【Ubuntu】目标机器已经安装相关组件,但是在 Jenkins 执行脚本的时候,运行报错“Command Not Found“,例如 npm.

Description

在 Jenkins 适配某个 job 的时候,发现,在执行对应的代码仓库打包的时候,有一行 npm 的命令行检查始终不过。

第一次,在对应的 机器上安装了下 nvm,然后通过 nvm 进行安装 npm。

并且在对应机器上执行了 npm -v, node -v 等检查是否安装成功软件的都成功。

但是在 Jenkins 一旦调度时候,就是直接报错。

具体截取到的报错如下:

18:09:13  /home/kylin/xxx/workspace/KYLIN5_UBUNTU_ALL/kylin@tmp/durable-ec7830bd/script.sh: line 5: node: command not found
18:09:13  /home/kylin/xxx/workspace/KYLIN5_UBUNTU_ALL/kylin@tmp/durable-ec7830bd/script.sh: line 6: npm: command not found
18:09:13  /home/kylin/xxx/workspace/KYLIN5_UBUNTU_ALL/kylin@tmp/durable-ec7830bd/script.sh: line 7: nvm: command not found

目标运行的机器上的相关执行命令!

Solutions

起初,怀疑是不是组件安装的不对,或者使用访问的用户隔离导致了命令无法找到,但是其实不是。 

继续检查,发现,其实 Jenkins 是需要被告知,对应运行机器节点上的服务器的 path 的环境变量! 

解决方案也很简单! 

首先获取到 对应 Jenkins 预期运行的服务器的 PATH 路径!

 

更新预期运行服务器节点的 PATH 环境变量,告诉 Jenkins! 

Jenkins 更新路径如下:

Dashboard → Manage Jenkins → Manage Nodes and Clouds → ${The Expected Running Nodes} → Configure 

找到对应的要运行机器服务节点并进行配置!

拉到最下方,看见环境变量,新增一个! 

【Jenkins】【Ubuntu】目标机器已经安装相关组件,但是在 Jenkins 执行脚本的时候,运行报错“Command Not Found“,例如 npm._第1张图片 

注意 PATH 是要大写! !!

 以上!

 

你可能感兴趣的:(jenkins,ubuntu,npm)