【问题标题】:Terraform outs from a resource called via a for_each从通过 for_each 调用的资源中生成 Terraform
【发布时间】:2021-04-09 10:55:30
【问题描述】:

我想知道是否有人可以帮助我解决以下问题我有一个基础资源来创建 aws 子网

resource aws_subnet subnet {
  vpc_id     = var.vpc_id
  cidr_block = var.cidr_block
}

output subnetId {
 value = aws_subnet.subnet.id
}

module private_subnet {
   source = "linktoresourcedetailedabove"
   for_each = var.privateSubnet
   vpd.id   = var.vpc_id
   cidr_block = each.value.cidr_block
} 

我有一个模块,它使用基于 var 的 for_each 循环调用,我的问题是这个资源可能被调用 10 次,我想存储每个 id,然后从另一个模块访问它,但我似乎在打这里的问题,我尝试更新 aws_subnet.subnet.id to aws_subnet.subnet.*.id 但仍然没有任何运气,似乎找不到任何可以帮助我的东西。

【问题讨论】:

  • 你能提供你如何使用10次一个模块的示例代码吗?
  • 当然,补充说。

标签: amazon-web-services for-loop foreach terraform subnet


【解决方案1】:

如果你的private_subnet 模块有输出

output subnetId {
 value = aws_subnet.subnet.id
}

然后,一旦您创建了 private_subnet 模块,您可以获得所有 subnetId 创建的列表:

values(module.private_subnet)[*].subnetId

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 2021-07-21
    • 1970-01-01
    • 2021-10-06
    • 2021-11-25
    • 2020-12-17
    相关资源
    最近更新 更多