首页 > 解决方案 > Terraform 语法和格式有什么区别?

问题描述

根据 Terraform 文档,配置文件可以是两种格式之一:t​​erraform 格式和 JSON。

参考。- https://www.terraform.io/docs/configuration/index.html

terraform 格式到底是什么?特别是关于 Terraform 配置文件语法:HCL(HashiCorp 配置语言)。参考。- https://www.terraform.io/docs/configuration/syntax.html

例如,文件可能具有 JSON 格式和 HCL 语法。或者可以有 TF 格式和 JSON 语法。

另外,JSON 格式和 JSON 语法有什么区别?

标签: jsonterraform

解决方案


Terraform 使用称为HashiCorp 配置语言 (HCL)的专有语言。该语言存储在 .tf 文件中(=Terraform 格式)。在这些文件中,您可以描述您的基础设施并设置变量。您的基础设施的这些定义称为配置。因此 HashiCorp 将其称为配置语法以区分配置语法(描述基础设施,使用 Terraform 对象)和插值语法(将其他值(变量、代码等)插入字符串)。

相反,使用 Terraform 语法(.tf 文件),您也可以在JSON Syntax中编写 Terraform 配置,在这种情况下,文件以 .tf.json 结尾。构造相同,但采用 JSON 格式。考虑为 CloudFormation(或类似的描述性工具)编写代码。在这里,您还可以在 YAML 和 JSON 之间进行选择。

我希望能澄清一点。这更难,因为 HashiCorp 并不总是以相同的方式使用这些术语......

有关更多信息,请查看或询问: 配置配置语法插值语法


推荐阅读