安装node_modules时,构建失败并显示“主机密钥验证失败”

时间:2020-10-25 17:42:26

标签: node.js heroku

更新 Clearing我的构建缓存并完全没有package-lock.json进行部署。

将我的Node应用程序部署到Heroku时,由于安装了我的一个依赖项(一个公共存储库)而导致Host key verification failed失败,

-----> Monorepo app detected
      Copied /server to root of app successfully
-----> Node.js app detected
       
-----> Creating runtime environment
       
       NPM_CONFIG_LOGLEVEL=error
       NODE_ENV=DEVELOPMENT
       NODE_MODULES_CACHE=true
       NODE_VERBOSE=false
       
-----> Installing binaries
       engines.node (package.json):  10.x
       engines.npm (package.json):   unspecified (use default)
       
       Resolving node version 10.x...
       Downloading and installing node 10.22.1...
       Using default npm version: 6.14.6
       
-----> Restoring cache
       - node_modules
       
-----> Installing dependencies
       Installing node modules
       npm ERR! Error while executing:
       npm ERR! /usr/bin/git ls-remote -h -t ssh://git@github.com/ethereumjs/ethereumjs-abi.git
       npm ERR! 
       npm ERR! Host key verification failed.
       npm ERR! fatal: Could not read from remote repository.
       npm ERR! 
       npm ERR! Please make sure you have the correct access rights
       npm ERR! and the repository exists.
       npm ERR! 
       npm ERR! exited with error code: 128
       
       npm ERR! A complete log of this run can be found in:
       npm ERR!     /tmp/npmcache.RchR7/_logs/2020-10-25T17_11_28_328Z-debug.log
-----> Build failed

我以前使用过的buildpack一直没有变化:

1. https://github.com/lstoll/heroku-buildpack-monorepo
2. https://github.com/heroku/heroku-buildpack-nodejs
  • App使用ethereumjs-abi所依赖的软件包已经在Heroku上运行了几周。 (这不是我的应用程序的直接依赖项。)
  • ethereumjs-abi自从我开始使用以来未更新
  • 应用仍然可以在本地正确运行
  • 我自己的存储库是私有的,但软件包存储库是公共的。
  • 我最近更改了SSH密钥,但是自从将它们添加到GitHub以来,没有其他任何SSH问题。现在,我用heroku keys:add将新密钥添加到了Heroku中,但是它没有任何作用。
  • 以前我是在指定engines: { node: 10.x },但现在也尝试过12.x和14.x
  • 从本地master推送到Heroku master

1 个答案:

答案 0 :(得分:0)

是的,到目前为止浪费了几天......

在用我自己的 fork 替换 npm 包并在 github.com 上提供自定义链接时遇到了同样的问题。

有什么帮助:

  1. 从 GIT 中删除包锁
  2. 使用 heroku builds:cache:purge --app $HEROKU_APP_NAME --confirm $HEROKU_APP_NAME 清除缓存