小编May*_*Ray的帖子

有条件地运行 terraform 模块

我正在尝试有条件地运行模块。下面是代码。如果提供了值,它就可以正常工作,但如果 var.accounts[*].vpc_ids 为空,则无法显示 var.vpc_id 不能为空。但这基本上是模块运行的条件。如果 vpc_id 计数为 0,则模块不应运行。请帮忙。

resource "aws_ec2_transit_gateway_vpc_attachment" "this" {
   transit_gateway_id = var.transit_gateway_id
  vpc_id = var.vpc_id
  subnet_ids = var.subnet_ids
  dns_support                                     = "disable"
  ipv6_support                                    = "disable"
  transit_gateway_default_route_table_association = false
  transit_gateway_default_route_table_propagation = false
}

locals {
  create_tgw_attach = var.accounts[*].vpc_ids != "" ? true : false
}

module "tgw_peer2" {
  source = "../modules/tgw"
    count = length(var.accounts[2].vpc_ids)
  providers  = {
    aws = aws.accepter2
  }
  create_tgw_attach      = local.create_tgw_attach
  transit_gateway_id = aws_ec2_transit_gateway.this.id
  vpc_id = var.accounts[2].vpc_ids[count.index]
  subnet_ids = var.accounts[2].vpc_subnets[count.index].subnet_ids
  destination_cidr_block = var.destination_cidr_block_route

  share_tgw                             = true …
Run Code Online (Sandbox Code Playgroud)

terraform terraform-provider-aws transit-gateway

5
推荐指数
1
解决办法
5861
查看次数