Terraform遍历Map时键被替换为'key'问题及修复咨询
问题修复方案:遍历Map时保留实际键名
你当前代码里的{ key = value }是把键名硬编码成了字符串"key",而非使用循环变量key作为动态键名。在Terraform中,定义动态键名需要用括号包裹变量的语法,修复后的代码如下:
join("\n", [for key, value in {"a":"b","c":"d"} : " ${yamlencode({ (key) = value })}"])
修复后输出结果符合预期:
"a": "b" "c": "d"
这种括号包裹变量的语法是Terraform定义动态键名的标准方式,它会将变量key的实际取值作为Map的键,而非把变量名本身当作字符串键。
内容的提问来源于stack exchange,提问作者Shagufta Oliveyu Methwani
相关产品推荐
相关产品推荐

