如何解决我们如何从Terraform gcp资源IAM绑定中的变量中添加项目编号
下面是我的地形资源。我们如何从terraform gcp资源iam绑定中的变量中添加项目编号,因为如果我要为其他帐户运行相同的terraform,则必须手动更改。
resource "google_project_iam_binding" "project" {
project = var.projectid
role = "roles/container.admin"
members = [
"serviceAccount:service-1016545346555@gcp-sa-cloudbuild.iam.gserviceaccount.com",]
}
解决方法
您可以使用google_client_config
数据源来访问提供程序的配置。
首先,将以下数据源块添加到main.tf中:
data "google_client_config" "current" {}
然后,您将可以按以下方式访问project_id:
output "project_id" {
value = data.google_client_config.current.project
}
有关更多信息,请参阅: https://www.terraform.io/docs/providers/google/d/client_config.html
,可以在google_project数据源(https://www.terraform.io/docs/providers/google/d/project.html)中找到项目编号。
因此,当添加此内容时:
data "google_project" "project" {}
应该可以使用以下方式访问它:
data.google_project.project.number