2017-08-07 264 views
0

我有一个模板,我terraform配置,而我写的一个变量的值是这样的:Terraform条件变量

data "template_file" "config" { 
    template = "${file("${path.module}/templates/${var.json_config}")}" 

    vars { 
    is_enabled = "${var.is_enabled}" 
    } 
} 

现在is_enabled是一个布尔值的字符串,要么设置为truefalse。现在基于如果这是真或假,我想设置另一个变量。在伪代码将是这样的:

如果is_enabled ==真 路径= /一个/路径/ 否则 路径= /另一/路径

我看看conditional values,但它似乎是为了培养资源。我将如何使用它在模板文件中设置变量?

回答

1

模板使用与Terraform中所有其他字符串相同的插值语法。 Documentation is available

所以你的情况就会是这样的:

path = ${is_enabled ? "/one/path/" : "/another/path"} 
+0

应该是'var.is_enabled' – BMW

+0

@BMW其实也没什么,因为这是模板,而不是Terraform资源。 – Hauleth