Gcloud 行为不同于 shell 到 cloudbuild.yaml
Gcloud comportament differ from shell to cloudbuild.yaml
我一直在尝试列出 gcloud 上的所有 API 网关配置,但出现了错误。
当我 运行 在我的用户登录的终端上执行以下命令时,它就像一个魅力。
gcloud api-gateway api-configs list --api=$API --project=$PROJECT_ID --format="table(name)"
但是当我 运行 从这个 cloudbuild.yaml
中执行相同的命令时
steps:
- name: "gcr.io/google.com/cloudsdktool/cloud-sdk"
entrypoint: "bash"
args:
- "-c"
- |
gcloud api-gateway api-configs list --api=logistics-homolog --project=$PROJECT_ID \
--filter=serviceConfigId:logistics-mobile-places-* --format="table(name)"
它给我以下错误:
ERROR: (gcloud.api-gateway.api-configs.list) PERMISSION_DENIED: Permission 'apigateway.apiconfigs.list' denied on 'projects/$PROJECT_ID/locations/global/apis/logistics-homolog/configs'
这是怎么回事?!
您没有提供足够的信息,但您可能没有在容器中验证 gcloud
。
查看镜像存储库的文档,了解如何对容器镜像进行身份验证;
您需要授予 Cloud Build 默认服务帐户(模式:@cloudbuild.gserviceaccount.com)您的命令所需的权限。
查看您的 IAM 页面以进行更新。
我一直在尝试列出 gcloud 上的所有 API 网关配置,但出现了错误。
当我 运行 在我的用户登录的终端上执行以下命令时,它就像一个魅力。
gcloud api-gateway api-configs list --api=$API --project=$PROJECT_ID --format="table(name)"
但是当我 运行 从这个 cloudbuild.yaml
中执行相同的命令时steps:
- name: "gcr.io/google.com/cloudsdktool/cloud-sdk"
entrypoint: "bash"
args:
- "-c"
- |
gcloud api-gateway api-configs list --api=logistics-homolog --project=$PROJECT_ID \
--filter=serviceConfigId:logistics-mobile-places-* --format="table(name)"
它给我以下错误:
ERROR: (gcloud.api-gateway.api-configs.list) PERMISSION_DENIED: Permission 'apigateway.apiconfigs.list' denied on 'projects/$PROJECT_ID/locations/global/apis/logistics-homolog/configs'
这是怎么回事?!
您没有提供足够的信息,但您可能没有在容器中验证 gcloud
。
查看镜像存储库的文档,了解如何对容器镜像进行身份验证;
您需要授予 Cloud Build 默认服务帐户(模式:@cloudbuild.gserviceaccount.com)您的命令所需的权限。
查看您的 IAM 页面以进行更新。