Affiche les valeurs des outputs définis dans les fichiers .tf.
Options principales
| Option | Défaut | Description |
|---|---|---|
-json | non | Format JSON (tous les outputs) |
-raw | non | Valeur brute sans guillemets ni formatage |
-no-color | non | Désactive les couleurs |
-state=FICHIER | terraform.tfstate | Fichier state à utiliser |
Exemples
# Afficher tous les outputs
terraform output
# Afficher un output spécifique
terraform output instance_ip
terraform output database_endpoint
# Valeur brute (pour utilisation dans un script)
terraform output -raw database_password
DB_PASS=$(terraform output -raw database_password)
# Format JSON (tous les outputs)
terraform output -json
# Format JSON d'un output spécifique
terraform output -json vpc_id
# Depuis un state alternatif
terraform output -state=prod.tfstate instance_ipDéclarer un output dans .tf
# outputs.tf
output "instance_ip" {
description = "IP publique du serveur web"
value = aws_instance.web.public_ip
}
output "database_endpoint" {
description = "Endpoint de la base de données"
value = aws_db_instance.main.endpoint
sensitive = true # ← masqué dans les logs, visible avec -raw
}
output "subnet_ids" {
description = "Liste des IDs de subnets"
value = aws_subnet.public[*].id
}Utilisation dans des scripts
# Récupérer l'IP pour SSH
IP=$(terraform output -raw instance_ip)
ssh ubuntu@$IP
# Configurer kubectl après création EKS
terraform output -raw kubeconfig > ~/.kube/config
# Récupérer plusieurs valeurs
DB_HOST=$(terraform output -raw db_host)
DB_PORT=$(terraform output -raw db_port)
DB_NAME=$(terraform output -raw db_name)
echo "postgres://${DB_HOST}:${DB_PORT}/${DB_NAME}"En relation avec
- Inspection — Vue d’ensemble — hub inspection
- terraform show — afficher l’état complet du state
- terraform console — tester des expressions HCL