terraform是否为地图的所有值提供默认值?
可以给我的地图一些默认值吗terraform是否为地图的所有值提供默认值?,terraform,Terraform,可以给我的地图一些默认值吗 变量“项目变量”{ 类型=映射 #默认值={} default={default:'false'} } 所以当我把这个变量传递给一个模块时,让我们说另外两个值 project_var={“project_a”:true,“project_b”:false} 但是在模块内部,资源将迭代其他10个“项目”,我可以给其他我没有在映射中指定的项目一个假值吗?对于字符串这很简单映射呢?没有一种方法为映射中的每个元素定义一个默认值,但是如果您指定了一个默认映射,您可以将其与用
变量“项目变量”{
类型=映射
#默认值={}
default={default:'false'}
}
所以当我把这个变量传递给一个模块时,让我们说另外两个值
project_var={“project_a”:true,“project_b”:false}
但是在模块内部,资源将迭代其他10个“项目”,我可以给其他我没有在映射中指定的项目一个假值吗?对于字符串这很简单映射呢?没有一种方法为映射中的每个元素定义一个默认值,但是如果您指定了一个默认映射,您可以将其与用户提供的地图合并,以获得类似的最终结果
project_var = { "project_a" : true, "project_b" : false }
default_project_map = {"project_a" : false, "project_b" : false, "project_c" : false}
merge(default_project_map , project_var )
结果:
{"project_a" : true, "project_b" : false, "project_c" : false}
参考资料:
没有为映射中的每个元素定义默认值的方法,但如果指定了默认映射,则可以将其与用户提供的映射合并,以获得类似的最终结果
project_var = { "project_a" : true, "project_b" : false }
default_project_map = {"project_a" : false, "project_b" : false, "project_c" : false}
merge(default_project_map , project_var )
结果:
{"project_a" : true, "project_b" : false, "project_c" : false}
参考资料:
您必须在
locals
块中执行此操作。您必须在locals
块中执行此操作。