首次尝试从 GCP 运行 Cloud Build 并遇到错误

Chi*_*wal 2 google-cloud-platform

作为初学者,我创建了一个源代码存储库并编写了一些基本的 terraform 代码,然后由 Cloud Build 执行。

我从控制台创建了 Cloud Build,并将其配置为在推送到 dev 分支时触发。

创建后,我尝试通过单击控制台上的“运行”来手动触发该作业。在此输入图像描述

此时我从控制台收到一个错误:

Failed to trigger build: unable to get call option credentials for cloud build robot: generic::permission_denied: error generating service identity: tenantmanager::123456: Consumer 1234567899 should enable service:cloudbuild.googleapis.com before generating a service account. com.google.api.tenant.error.TenantManagerException: Consumer 1234567899 should enable service:cloudbuild.googleapis.com before generating a service account.
Run Code Online (Sandbox Code Playgroud)

仍在尝试弄清楚如何解决这个问题。感谢任何指点。

谢谢

小智 5

一般来说,您应该在 CLI 工具中使用以下命令启用云构建 API:

gcloud services enable cloudbuild.googleapis.com
Run Code Online (Sandbox Code Playgroud)

您可能需要考虑使用以下命令将云构建帐户添加为服务帐户(将变量替换为相关值)

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:${PROJECT_NUM}@cloudbuild.gserviceaccount.com" --role='roles/iam.serviceAccountUser'
Run Code Online (Sandbox Code Playgroud)

有许多实践可供遵循(取决于您想要实现的目标),强烈建议您阅读 GCP 文档,该文档非常详细、信息丰富且有用。

https://cloud.google.com/iam/docs/service-accountshttps://cloud.google.com/build/docs