Google Cloud Functions:部署错误,main.py不存在

时间:2019-01-09 15:28:37

标签: python google-cloud-functions

从本地系统部署Google Cloud Functions失败,并出现以下错误:

ax

我已经使用控制台UI来检查在失败的部署中上载的软件包的内容,并且存在文件。该软件包是使用ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Function load error: File main.py that is expected to define function doesn't exist CLI创建的:

gcloud

就上下文而言,同一项目已由多个人成功部署了多次,但对于在指定日期后签出的所有新项目都开始失败。

2 个答案:

答案 0 :(得分:1)

在我们的例子中,这是因为凭据无效,即传递给ServiceAccountCredentials.from_json_keyfile_name的JSON文件丢失了。令人困惑的是,该错误并未提及有关安全性,凭据或丢失的文件的任何信息。

秘密不在版本控制中,共享保管库具有陈旧的文件,该文件与python脚本中提供的路径不匹配。凭据更正后,此问题已修复。

我们通过成功部署“哑”功能(返回字符串),然后逐步添加回功能直到其失效,设法将问题隔离到经过身份验证的呼叫中。

答案 1 :(得分:0)

我在Node.js的应用程序中解决了这个问题,基本上我发现它调用了项目的.gcloudignore文件.gitignore,因此,如果您的函数位于一个跳过的文件夹中,它只会找不到,则只需删除行#! Include : .gitignore文件.gcloudignore