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

将Terraform HCL的map(any)类型变量转换为合法tf.json格式

问题原因

你的JSON配置存在类型不匹配错误:原HCL中accounts变量的类型声明为map(any),对应的default值是键值对构成的映射对象,但你两次尝试的配置里都把default值用方括号[]包裹转成了数组类型,不符合类型约束才会报错。

正确的tf.json写法

{
  "variable": {
    "accounts": {
      "type": "map(any)",
      "default": {
        "acct1": ["000000000001"],
        "acct2": ["000000000002"]
      }
    }
  }
}

HCL转tf.json工具

Terraform官方自带转换能力,你可以在包含合法HCL配置的目录下先执行terraform init完成初始化,再执行terraform show -json就能直接导出符合语法规范的JSON格式配置,无需手动调整结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 01:54:02