我们如何从 terraform gcp 资源 iam 绑定中的变量添加项目编号

how can we add project number from variable in terraform gcp resource iam binding

下面是我的地形资源。我们如何从 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 data-source 访问提供程序的配置。

首先,将以下 data-source 块添加到 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 data-source (https://www.terraform.io/docs/providers/google/d/project.html).

所以当添加这个时:

data "google_project" "project" {}

它应该可以通过以下方式访问:

data.google_project.project.number