Terraform syntax: Difference between revisions

From wikinotes
Line 58: Line 58:
|}
|}
</blockquote><!-- Features -->
</blockquote><!-- Features -->
= Comments =
<blockquote>
<syntaxhighlight lang="tf">
# comment
// comment
/* multiline
* comment
*/
</syntaxhighlight>
</blockquote><!-- Comments -->

Revision as of 15:39, 25 September 2022

Terraform files use the extension *.tf.
It is based on the HCF language.
Files must be UTF-8 encoded, and the convention is to use unix line endings.

Documentation

terraform language https://www.terraform.io/language
expressions https://www.terraform.io/language/expressions

Overview

  • blocks contain configuration for an object using a key/value format
  • labels can optionally be assigned a block (as many as you'd like)
  • arguments are how the key-value assignments within a block are referred to.
# ${BLOCK_TYPE} [${LABEL}..] {
#   ${IDENTIFIER} = ${EXPRESSION}  # argument
# }

resource "aws_vpc" "main" {
  cidr_block = var.base_cidr_block
}

Syntax

terraform comments
terraform datatypes
terraform operators
terraform conditionals
terraform loops
terraform functions

Features