【问题标题】:Jenkins NodeJS plugin: can't execute 'node'Jenkins NodeJS 插件:无法执行“节点”
【发布时间】:2019-09-01 11:42:43
【问题描述】:

在配置了全局包的slave上使用NodeJS工具时,报如下错误:

env: can't execute 'node': No such file or directory

如果构建在 master 中的 executor 上运行,则没有错误,并且包按预期安装。

我正在使用 kubernetes 插件,jenkins/jnlp-slave:3.27-1 作为从镜像。

Jenkins 版本:2.164.2
Kubernetes 插件:1.14.9
NodeJS 插件:1.2.9

注意:这不是 Jenkins - env: ‘node’: No such file or directory 的副本,因为我没有像那个问题那样使用 alpine 图像。

【问题讨论】:

  • 我也有这个问题。
  • 我遇到了同样的问题。一种解决方法是创建一个自定义 jnlp-slave docker 映像,其中预装了 nodejs,而不是使用 NodeJS 插件

标签: node.js jenkins jenkins-plugins kubernetes-jenkins-plugin


【解决方案1】:

我的 Jenkins 也有同样的问题。

“从 nodejs.org 下载”安装程序将节点包解压到本地目录。

然后它将为 NodeJS 安装程序配置(“全局工具配置”)中“要安装的全局 npm 包”字段中列出的每个包运行“npm install -g”。

但是,它在将系统 PATH 设置为它提取节点的目录之前这样做,因此 npm 将找不到节点。

我确信这是 NodeJS Jenkins 插件中的一个错误。正如 agusluc 所说,您的选择是创建一个自定义 jnlp-slave 映像(这就是我所做的),或者向插件的开发人员提交一个错误并希望它能够得到修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-03
    • 1970-01-01
    • 1970-01-01
    • 2013-08-15
    • 2014-06-17
    • 2021-07-30
    • 2020-04-18
    相关资源
    最近更新 更多