我们如何从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

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...