Declarer des variables
# variables.tf
variable "region" {
description = "Region AWS a utiliser"
type = string
default = "eu-west-3"
}
variable "instance_type" {
description = "Type d'instance EC2"
type = string
default = "t2.micro"
}
variable "allowed_ports" {
description = "Ports a ouvrir"
type = list(number)
default = [80, 443, 22]
}
variable "tags" {
description = "Tags communs"
type = map(string)
default = {
Environment = "dev"
Team = "infra"
}
}
Types de variables
string— Textenumber— Nombrebool— true/falselist(type)— Liste ordonneemap(type)— Paires cle-valeurobject({...})— Structure complexe
Fournir les valeurs
# terraform.tfvars (charge automatiquement)
region = "eu-west-1"
instance_type = "t3.small"
# En ligne de commande
terraform apply -var="region=us-east-1"
# Variable d'environnement
export TF_VAR_region="eu-west-3"
Utiliser les variables
provider "aws" {
region = var.region
}
resource "aws_instance" "web" {
instance_type = var.instance_type
tags = var.tags
}
Securite : Ne mettez jamais de secrets (mots de passe, cles API) dans
terraform.tfvars commite dans Git. Utilisez des variables d'environnement ou un gestionnaire de secrets.