我有这个cloudbuild.yaml
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
entrypoint: gcloud
args:
- 'alpha'
- 'run'
- 'deploy'
- 'backend'
- '--image=eu.gcr.io/$PROJECT_ID/backend:$BUILD_ID'
- '--concurrency=10'
- '--cpu=1'
- '--memory=512Mi'
- '--region=europe-west4'
- '--min-instances=1'
- '--max-instances=2'
- '--platform=managed'
- '--port=8080'
- '--timeout=3000'
- '--ingress=internal'
- '--vpc-connector=cloud-run'
- '--vpc-egress=private-ranges-only'
- '--set-cloudsql-instances=foo:europe-west4:bar'如果我事先通过Console (Web )创建了一个服务,那么它可以正常工作。但是,如果服务还不存在,我想要的是最初创建一个名为xy的服务。
因为otherwhise我的CI管道显示了这个错误:
步骤2:错误:(gcloud.alpha.run.deploy) PERMISSION_DENIED:资源‘名称空间/*/服务/后端’(或资源可能不存在)上的权限'run.services.get‘被拒绝。
这是正确的。services/backend不存在。但是如果它不存在的话,我想要创建它,并在将来简单地更新它的容器映像。我阅读了关于run的整个gcloud文档,但什么也找不到。好像是故意漏掉的?
发布于 2021-08-27 03:25:37
当我在cloudbuild中删除云运行管理权限时,我得到了以上错误,但是当我将云运行管理角色添加到cloudbuild时,它能够创建一个新的云运行服务,如果存在服务,它能够将新映像部署到那个云运行服务中。
同时,尝试删除.yaml文件中的'alpha‘。
https://stackoverflow.com/questions/68936967
复制相似问题