terraform - 如何有条件地更新route_table属性

时间:2017-02-26 15:27:00

标签: terraform

如何有条件地插入'propagating_vgws = some_vgw'??

的任何想法

我看到有条件创建资源的方法很多,但是资源可选属性呢?

resource "aws_route_table" "internal" {
  count  = "${length(var.internal_subnets)}"
  vpc_id = "${aws_vpc.main.id}"
#  propagating_vgws = ["${aws_vpn_gateway.main.id}"]

  tags {
    Name = "${var.name}-${format("internal-%03d", count.index+1)}"
  }
}

route_table是由vpc模块创建的,我需要有条件地将该vpc放在直连虚拟接口上。

感谢任何反馈。

1 个答案:

答案 0 :(得分:0)

也许this会帮助你。 (滚动到conditinals部分)。

这个想法是你可以做一个条件插值,你可以创建一个空列表,将属性呈现为空,因此在某种程度上是可选的(有意义的有价值):

propagating_vgws = "${var.decide_based_on_this_value == var.something ?
                      var.list_in_case_yes : list() }"

${list()}返回一个空列表,更多参考上面的链接页面,底部有许多内置函数,如列表......

我希望它能解决你的问题。