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

如何在Terraform中定义对象列表类型变量并在tfvars中正确赋值

Terraform list(object)类型变量赋值错误解决方案

错误原因

你定义的groups变量类型为list(object({group = string})),也就是由包含单个group字符串属性的对象组成的列表,你之前的赋值语法存在两处错误:

  • Terraform中列表使用方括号[]包裹元素,你错误使用了双花括号{{}}
  • 你将两个独立的对象合并到了同一个对象中,重复声明了group属性,违反了单个对象内属性唯一的规则

正确赋值写法

如果你需要groups列表包含两个对象,对应group值分别为D和K,在.tfvars文件中的写法如下:

groups = [
  {
    group = "D"
  },
  {
    group = "K"
  }
]

如果偏好紧凑的单行写法,也可以写为:

groups = [{group = "D"}, {group = "K"}]

验证方法

修改完成后可以执行terraform console命令,输入var.groups校验变量是否能正常解析,无报错且输出对应列表值即为配置正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:15:02