Sobes.tech
Middle
111
questionbank

Каков приоритет использования переменных в Terraform?

Answer from AI

sobes.tech AI

Приоритет использования переменных в Terraform: от наивысшего к наименьшему:

  1. Переменные окружения.
  2. Командная строка (параметры -var или -var-file).
  3. Файлы переменных (terraform.tfvars, *.auto.tfvars, terraform.tfvars.json, *.auto.tfvars.json).
  4. Переменные, объявленные в файлах variables.tf или *.tf в блоке variable, без переопределения. В этом случае используется значение default, если оно указано.

Пример с переменной окружения:

# Установка переменной окружения
export TF_VAR_instance_type="t2.medium"

Пример с командной строкой:

# Передача переменной напрямую
terraform apply -var="instance_type=t2.large"

# Передача переменных из файла
terraform apply -var-file="dev.tfvars"

Пример файла переменных terraform.tfvars:

# Переменная в файле terraform.tfvars
instance_type = "t2.small"

Пример объявления переменной в variables.tf:

variable "instance_type" {
  description = "EC2 instance type"
  type        = string
  default     = "t2.micro" # Значение по умолчанию
}