在使用jenkins-slave进行jenkins构建期间的Npm安装给出了无法解析私有存储库的主机名的错误

最近几天我一直在做这个,无法弄清楚我的Jenkins管道构建为何停止工作。 Jenkins配置为在派生自jenkins-slave的docker容器上运行作业。

我有一个节点项目,并试图运行npm install作为运行测试的先决条件。

package.json文件引用两个私有github存储库。我已经在.ssh上设置了它,如本文在多个帖子中所讨论的,其中有一个配置文件引用了多个rsa键。我很确定这是正确设置的,因为在容器上运行git命令可以按预期工作(见下文)。

如果我运行jenkins构建,则在npm install命令中出现以下错误:

npm ERR! /usr/bin/git ls-remote -h -t ssh://git@{host}/{account}/{repo}.git
npm ERR! 
npm ERR! ssh: Could not resolve hostname {host}:Name or service not known

要检查发生了什么,我在Jenkinsfile中添加了第二个shell命令,使其看起来像这样:

sh '/usr/bin/git ls-remote -h -t ssh://git@{host}/{account}/{repo}.git'
sh 'npm install'

如您所见,在npm install命令之后,正是完全相同的命令失败。仅此命令成功。

有人知道如果npm install作为副产品运行该命令时,导致命令输出不同的原因是什么?此操作以前有效,并且在Jenkinsfile停止工作之前未对其进行任何更改。

我还看到运行npm安装,但是可能不相关的是许多警告,例如:

  

npm WARN TAR ENOENT:没有这样的文件或目录,请打开   '/var/lib/jenkins/workspace/{irrelevant_path}/node_modules/.staging/bcrypt-b0327167/examples/async_compare.js'

如果需要,我可以分享其他信息。

wlxtgc 回答:在使用jenkins-slave进行jenkins构建期间的Npm安装给出了无法解析私有存储库的主机名的错误

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3153655.html

大家都在问