【发布时间】:2019-08-16 03:54:11
【问题描述】:
我有一个 NPM 包托管在私有 Bitbucket git 存储库中(不在官方 NPM 注册表中)。
我的 package.json 中有这个,在“依赖项”键下:
"a-private-package" git+ssh://git@bitbucket.org:myusername/a-private-package.git
当我使用我的 SSH 密钥在本地运行 npm install 时,它可以工作。
但是当我使用gcloud app deploy 部署到节点的应用引擎标准环境时,我从 Google Cloud Build 获得了一个Host key verification failed。
我试过了:
向 Cloud Build 添加自定义 SSH 密钥。
https://cloud.google.com/cloud-build/docs/access-private-github-repos
问题:对于 GAE 标准,无法访问 cloudbuild.yaml;无法告诉 git 使用 SSH 密钥。
将我的私人 git 存储库添加到 Google Sources。
问题:GAE 标准无法访问cloudbuild.yaml;无法告诉 git 使用 SSH 密钥。
npm pack; npm install
问题:不保留回购历史/URL。
真的可以吗?
【问题讨论】:
-
你看过这个Article吗?它提到了使用 GAE 标准的 cloudbuild.yaml 并将 Bitbucket 链接到它。
-
我没有,但会看看。我认为它不会像示例从构建中调用
gcloud app deploy那样工作,这将启动另一个新构建,而在它之前的层中没有安装 SSH 密钥? -
好吧,这篇文章在他定义
cloudbuild.yaml之后运行gcloud app deploy。我看到您从 Cloud Build 获得了Host key verification failed错误并将 SSH 密钥添加到 .yaml 文件可以解决此问题,但您还说您无法修改cloudbuild.yaml。为什么不能修改cloudbuild.yaml? -
gcloud app deploy将触发一个新的新构建(从第一个构建开始),cloudbuild.yaml为空。我认为这是核心问题(您无法自定义gcloud app deploy使用的cloudbuild.yaml)。如果您查看那篇文章的 cmets,其他人也有同样的问题。不过感谢您的链接。 -
@zino 你有没有找到解决办法?
标签: google-app-engine npm google-cloud-build google-appengine-node