Sobes.tech
Middle

Ποια είναι η προτεραιότητα της χρήσης μεταβλητών στο Terraform;

sobes.tech AI

Απάντηση από 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        = string
  default     = "t2.micro" # Προεπιλεγμένη τιμή
}