【发布时间】:2020-07-31 07:36:39
【问题描述】:
我一直在使用带有 terraform 的 IaC 进行自动化测试,我希望从本教程 Manageing GCP Projects with Terraform 中采取这些步骤,并使用版本控制将它们自动化。
但是我遇到了一个抛出的错误
err: failed pre-requisites: missing permission on "billingAccounts/billingaccountid": billing.resourceAssociations.create
IAM TF 配置
resource "google_organization_iam_binding" "tfadmin" {
org_id = var.org_id
role = "roles/billing.resourceAssociations.create"
members = [
"serviceAccount:tfadmin@project_id.iam.gserviceaccount.com",
]
}
resource "google_billing_account_iam_member" "binding" {
billing_account_id = var.billing_account
role = "roles/billing.user"
member = "serviceAccount:tfadmin@project_id.iam.gserviceaccount.com"
}
resource "google_service_account" "tfadmin" {
project = google_project.project.project_id
account_id = "tfadmin"
display_name = "tfadmin"
}
resource "google_project_iam_binding" "project_name" {
project = google_project.project.project_id
role = "roles/bill.user"
members = [
"serviceAccount:${google_service_account.tfadmin.email}",
"user:var.billing_account_user",
]
}
resource "google_project_iam_policy" "project_id" {
project = google_project.project.project_id
policy_data = data.google_iam_policy.tfadmin.policy_data
}
data "google_iam_policy" "tfadmin" {
binding {
role = "roles/resourcemanager.projectCreator"
members = [
"serviceAccount:tfadmin@project_id.iam.gserviceaccount.com",
]
}
}
我正在寻找添加服务帐户以使用其他 gcp 服务(cloudsql、计算引擎、应用程序引擎)创建另一个 GCP 项目
我缺少的东西没有找到吗?
【问题讨论】:
-
您是否使用 Cloud Build 触发 Terraform?
-
是的,这与我创建的其他帖子相关。我希望能够将教程复制为自动化,而无需在 ci/cd 管道中提供密钥和其他机密信息。
-
我遇到了同样的问题并解决了我在此处描述的问题:stackoverflow.com/questions/61053649/…
标签: google-cloud-platform terraform google-cloud-build