我有一份詹金斯的工作,试图将一个 npm 包推送到一个私有的 aws 代码工件仓库。
这在我的机器上本地工作,但是当通过詹金斯运行时,这个错误出来了。jenkins 设置是将容器作为从站运行,其中安装了节点。这是我可以从笔记本电脑上发现的唯一区别。
这是构建日志: https ://pastebin.com/fENQSG9w
+ cat -A /home/jenkins/.npmrc
registry=https://myorg-awsAccNo.d.codeartifact.us-east-1.amazonaws.com/npm/myrepo/$
//myorg-awsAccNo.d.codeartifact.us-east-1.amazonaws.com/npm/myrepo/:always-auth=true$
//myorg-awsAccNo.d.codeartifact.us-east-1.amazonaws.com/npm/myrepo/:_authToken=eyJ2ZXIiXXXXXXXXXxx2h99mC5RQp4El-0g$
+ cat -A .npmrc
cat: .npmrc: No such file or directory
我看到登录的 aws cli 工作正常,它也使用身份验证令牌在用户级别设置 .npmrc。但是,在发布工件时,它会转到https://registry.npmjs.org/@myscope%2ftest-poc-package而不是 npm 代码工件位置。
从容器内的 npm 版本是:6.14.11
我在 jenkins 作业中添加了步骤,以列出用户主页和项目主页中的 .npmrc 以及 npm 调试日志,并且没有任何异常表明任何异常。