具有“gcloud 函数部署”的 GCP 云函数失败,并显示 --source 作为文件而不是目录

Era*_*ore 4 python google-cloud-platform gcloud google-cloud-functions

我正在尝试将我的 GCP gcloud 函数(在 python 中)构建为每个函数的单独文件。从文档中听起来应该支持它,但是当我尝试使用 --source 作为文件名而不是目录时,它失败了。我做错了什么吗?

这是我使用的命令:

gcloud 函数部署 createAccount --runtime python38 --trigger-http --source=postgres/createAccount.py --region us-central1

我得到的错误是:

错误:(gcloud.functions.deploy)参数--source:提供的路径不指向目录

但是,如果我将“createAccount”python 函数放入main.pypostgres目录中并使用此命令,该函数将完美部署:

gcloud 函数部署 createAccount --runtime python38 --trigger-http --source=postgres --region us-central1

这里看起来好像它应该接受选项中的文件名--source

https://cloud.google.com/functions/docs/first-python

请参阅本节:

在此输入图像描述

如果有办法不让 main.py 成为我所有云函数的一大块,有什么想法吗?

Kol*_*ban 5

如果我们查看用于部署函数的 gcloud 命令的文档以及--source其中的标志:

https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--source

我们发现它明确表示它需要一个目录作为参数而不是源文件。您提供的链接似乎说我们可以指定一个文件,但它看起来有错误。我认为这是一个错误,它只能是--source.

这似乎意味着您可以创建多个目录......其中每个目录仅包含您希望部署的功能。