gcloud app部署Go应用报错:无法创建Cloud Build,存储桶无效
gcloud app deploy 部署失败:无法访问Cloud Build日志存储桶 问题现象
3月22日之后创建的GCP新项目,使用gcloud app deploy部署Go应用时,文件上传成功后会触发权限错误,导致部署完全失败。3月22日及之前创建的旧项目部署正常,多个不同GCP账号(含多年老账号)测试均出现相同问题。
复现步骤
- 使用任意Gmail账号注册GCP并创建账单账号(含免费试用)
- 安装包含Beta版的Google Cloud CLI,执行
gcloud init或gcloud auth login <your_gmail>完成认证 - 创建新项目:
gcloud projects create xxx-yyy - 关联账单账号:
gcloud beta billing projects link xxx-yyy --billing-account XXX-YYY-XXX - 为项目创建App Engine实例:
gcloud app create --project xxx-yyy - 部署应用:
gcloud app deploy --appyaml myapp.yaml --project xxx-yyy
错误日志
ERROR: (gcloud.app.deploy) Error Response: [13] Failed to create cloud build: invalid bucket "205143635137.cloudbuild-logs.googleusercontent.com"; default Cloud Build service account or user-specified service account does not have access to the bucket com.google.net.rpc3.client.RpcClientException: <eye3 title='/ArgoAdminNoCloudAudit.CreateBuild, INVALID_ARGUMENT'/> APPLICATION_ERROR;google.devtools.cloudbuild.v1/ArgoAdminNoCloudAudit.CreateBuild;invalid bucket "205143635137.cloudbuild-logs.googleusercontent.com"; default Cloud Build service account or user-specified service account does not have access to the bucket;AppErrorCode=3;StartTimeMs=1711390344614;unknown;ResFormat=uncompressed;ServerTimeSec=9.701026299;LogBytes=256;Non-FailFast;EndUserCredsRequested;EffSecLevel=none;ReqFormat=uncompressed;ReqID=a06ef84bab72e6f6;GlobalID=0;Server=[2002:a1b:7246:0:b0:32b:ca81:def]:4001.
排查情况
- 观察到新项目IAM默认权限与旧项目存在差异,推测GCP在3月22日做了相关权限调整
- 尝试过以下操作,均无法解决问题:
- 为新项目添加旧项目的所有IAM权限
- 在Cloud Build设置页面启用「App Engine Admin」权限
- 重新执行
gcloud auth login完成认证
- 错误指向的日志存储桶
[PROJECT_ID].cloudbuild-logs.googleusercontent.com为Google自动创建的内部存储桶,无法在控制台查看或修改权限,按官方文档该桶应自动配置好Cloud Build服务账号的访问权限 - 确认问题与Go应用代码、
myapp.yaml配置无关,仅影响新项目部署
内容的提问来源于stack exchange,提问作者truedmik
相关产品推荐
相关产品推荐

