GCloud Functions调试部署失败

GCloud Functions debugging deployment failure

今天刚开始使用 GCloud Functions,我遇到了问题。 我已经将我的一个项目更新为功能就绪,并使用 google 的 local-emulator (@google-cloud/functions-emulator) 来调试和测试我的新功能。 一切顺利,模拟器部署也很顺利。 ```

$ functions deploy doThing --trigger-http --timeout=540s
Copying file:///var/folders/nw/.../T/us-central1-doThing-....zip...
Waiting for operation to finish...done.
Deploying function.......done.
Function doThing deployed.

```

但是当我尝试使用实际的 gcloud beta functions 做同样的事情时,我得到了一个构建错误,没有任何理由或明显的调试方法:

```

$ gcloud beta functions deploy doThing --stage-bucket test-bucket --trigger-http --timeout=360s
Copying file:///var/folders/nw/.../T/tmpUJvuxd/fun.zip [Content-Type=application/zip]...
| [1 files][  7.5 MiB/  7.5 MiB]
Operation completed over 1 objects/7.5 MiB.
Deploying function (may take a while - up to 2 minutes)...failed.
ERROR: (gcloud.beta.functions.deploy) OperationError: code=13, message=Error in the build environment

```

在 GClould 日志中,我也没有得到任何其他详细信息 ==> https://pastebin.com/6H7DRkE8

如何调试此部署问题?

我刚刚遇到了同样的问题,这是由于 package.json/dependencies 中模块名称中的拼写错误造成的。

经过更多研究,我找到了调试部署过程的方法。 gcloud 工具带有一组选项,这些选项不容易发现,但提供 verbosity 等功能。这就是调试部署过程所需要的。在这里找到所有选项: https://cloud.google.com/sdk/gcloud/reference/alpha/functions/deploy (页面底部)

就我而言,问题是私人 NPM 存储库,由于缺乏权限,肯定无法检出。

gcloud beta functions deploy <NAME> --stage-bucket <BUCKET> --verbosity debug