Hashicorp Configuration Language: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 7: Line 7:
=Block=
=Block=
==Resource Block==
==Resource Block==
Declares a [[Terraform Concepts#Resource|resource]].
==Data Block==
==Data Block==
==Module Block==
==Module Block==

Revision as of 00:36, 14 November 2019

External

Internal

Overview

Block

Resource Block

Declares a resource.

Data Block

Module Block

Interpolation Expression

Input Variable

variable "region" {
  default = "us-east-1"
}

To use the variable:

region= var.region

This is also an interpolation expression, prefixed with “var.”

Variables can be assigned in multiples way, and this is the descending order of precedence:

  • command-line flags (-var = ‘region=something’)
  • from a file (.tfvars, -var-file=…) terraform.tfvars or *.auto.tfvars in the current directory are automatically loaded. Multiple -var-file can be used.
  • From environment variables: TF_VAR_name. This can only be used for string variables.
  • UI Input
  • Variable defaults (“default” keyword).

Lists

https://learn.hashicorp.com/terraform/getting-started/variables#lists

Maps

https://learn.hashicorp.com/terraform/getting-started/variables#maps

Output Variable

https://learn.hashicorp.com/terraform/getting-started/outputs

Output variables are a way to organize data to be easily queried and shown back to the Terraform user. Terraform usually stores hundred or thousands of attribute values, but only a few of those are important. Output variables can be used as an input to other modules.

Also see:

terraform output