You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform中将yamldecode解析结果转为元组列表的实现方法

实现代码

你可以直接通过Terraform的for表达式配合类型转换函数实现,完整示例如下:

locals {
  # 解析目标YAML文件
  parsed_data = yamldecode(file("myfile.yaml"))
  # 遍历解析后的数据,构造元组列表
  target_tuple_list = [
    for entry in local.parsed_data.test : tuple([
      entry.name,
      tonumber(entry.number),
      entry.description
    ])
  ]
}

效果验证

你可以通过output输出验证结果:

output "final_result" {
  value = local.target_tuple_list
}

执行terraform apply后输出的结果为:

final_result = [
  ("A", 1, "Bla"),
  ("B", 2, "Bla"),
]

逻辑说明

  • parsed_data.test对应解析后的YAML结构中test键对应的列表数据,for表达式遍历列表中每个map元素
  • tonumber()将YAML中字符串格式的number字段转换为数值类型,匹配你要的输出要求
  • tuple()函数将三个属性值封装为元组类型,最终生成你需要的元组列表结构。

内容的提问来源于stack exchange,提问作者olivia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 17:39:03