无法使用我自己的服务帐户通过cli部署gen2云功能

问题描述 投票:0回答:1
gcloud --version
Google Cloud SDK 488.0.0
alpha 2024.08.09
beta 2024.08.09
bq 2.1.8
core 2024.08.09
gcloud-crc32c 1.0.0
gsutil 5.30
istioctl 1.20.47

我不知道如何执行

gcloud functions deploy --gen2
命令。我可以部署第 1 代,但第 2 代会抛出无法破译的服务帐户错误。

首先从文档开始:https://cloud.google.com/functions/docs/deploy#basics

gcloud functions deploy sdfsdfsd \
    --gen2 \
    --project="sdfsdf" \
    --region="us-central1" \
    --entry-point=my_func \
    --no-allow-unauthenticated \
    --runtime=python312 \
    --build-service-account="[email protected]" \
    --trigger-http

我明白了

ERROR: (gcloud.functions.deploy) OperationError: code=3, message=Deployment failed: ["params.service_account: must be empty or a service account of format: projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}"]. Check your build configuration.
已经没有意义了,因为我没有设置服务帐户。

然后我设置帐户:

--service-account="[email protected]"
,我得到
ERROR: (gcloud.functions.deploy) Deployment failed: ["params.service_account: must be empty or a service account of format: projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}"]. Check your build configuration.

我找不到使用这种格式的 gcloud cli 的任何示例,但是当我尝试时,我收到此错误:

ERROR: (gcloud.functions.deploy) ResponseError: status=[400], code=[Ok], message=[Could not create Cloud Run service sdfsdfsd. serviceAccountName: Unsupported service account: projects/my-project-id/serviceAccounts/[email protected]]

我为

[email protected]
帐户授予了以下角色: enter image description here

我需要做什么才能让这个命令起作用?

我可以使用此服务帐户通过 UI 部署第 2 代功能,不会出现任何问题。

google-cloud-platform google-cloud-functions gcloud
1个回答
0
投票

答案与

--service-account
参数无关,尽管每当我修改其格式时都会遇到不同的错误!

我最初将其关闭(编辑我的帖子以包含它),但我正在使用自定义构建服务帐户(出于安全原因,默认值现在已禁用)。

看来这是正确的开关系列:

--build-service-account="projects/{PROJECT_ID}/serviceAccounts/{CLOUD_BUILD_GSA}" \
--service-account="{RUNTIME_GSA}" \

它在文档中确实提到了这种格式:https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--build-service-account

但是错误随着修改另一个开关而改变这一事实非常令人困惑。我会打开一份错误报告,但不确定它的措辞如何。

params.service_account
错误中应该是
params.build_service_account

© www.soinside.com 2019 - 2024. All rights reserved.