我在jenkins中运行的脚本在某些时候包含这个命令:
npm update fhir-types --force
结果是:
C:\ Sources \ iw-next \ iw.next-ui> npm update fhir-types --force npm WARN 使用--force我当然希望你知道你在做什么。错误的ERR!码 128 npm ERR!命令失败:C:\ Program Files \ Git \ cmd \ git.EXE clone --depth = 1 -q -b dev https://bitbucket.org/asd/fhir-types.git C:\ Windows \ system32 \ config \ systemprofile \ AppData \ Roaming \ npm-cache_cacache \ tmp \ git-clone-1b2dca91 --config core.longpaths = true npm ERR!警告:找不到模板C:\ Windows \ TEMP \ pacote-git-template-tmp \ git-clone-fd08367f npm ERR! remote:用户名或密码无效。如果您通过第三方登录 您必须确保在您的服务中设置了帐户密码 帐户资料。错误的ERR!致命:身份验证失败 ' https://bitbucket.org/asd/fhir-types.git/'错误的ERR!
npm ERR!可以在以下位置找到此运行的完整日志:npm ERR!
C:\的Windows \ system32 \设置\ systemprofile \应用程序数据\漫游\ NPM-cache_logs \ 2017-11-21T07_55_14_306Z-的debug.log
当我在本地运行它可行时 - 无论如何在我运行此更新之前在命令行中更改用户和pw for git?
答案 0 :(得分:1)
这可能是一些事情。有时Jenkins无法运行npm update/install
,因为文件系统没有正确的权限。要解决此问题,请在文件系统上运行此命令。
chmod -R 777 /path/to/jenkins
根据经验,我发现在Jenkins上出现npm问题有时是由于Git配置不当造成的。还有一些npm配置设置也可以尝试。我建议从Jenkins作业中的自定义shell运行其余命令。
首先确保您的Git用户名和电子邮件已设置完毕。然后禁用SSL。禁用此功能并不是最安全的,有些人认为这是一种黑客行为,但它在很多情况下都有效。
git config --global user.name "BobDole"
git config --global user.name "bob.dole@cheescakefactory.org"
git config --global http.sslVerify false
看起来您正在使用私有Bitbucket存储库来保存您的npm包。未发布到公共npm存储库的NPM包对Jenkins来说有点挑剔。您可能必须自己尝试一些npm配置设置,看看哪些有用:https://docs.npmjs.com/misc/config
我的第一个建议是尝试将注册表明确设置为公共npm注册表。这对Jenkins来说过去很有用。
npm config set registry https://registry.npmjs.org/