Dans cette étape finale, vous utiliserez les commandes Terraform standard pour initialiser, planifier et appliquer votre configuration. Cela exécutera le code de votre module et créera le fichier local.
Premièrement, initialisez le répertoire de travail Terraform. Cette commande télécharge les plugins de fournisseur (provider plugins) nécessaires (dans ce cas, hashicorp/local).
terraform init
Vous devriez voir un message de succès indiquant que Terraform a été initialisé.
Initializing the backend...
Initializing provider plugins...
- Finding hashicorp/local versions matching "2.4.0"...
- Installing hashicorp/local v2.4.0...
- Installed hashicorp/local v2.4.0 (signed by HashiCorp)
Terraform has been successfully initialized!
...
Ensuite, exécutez terraform plan pour voir les changements que Terraform va effectuer. Il s'agit d'une exécution à blanc (dry run) qui ne modifie rien mais vous montre le plan d'exécution.
terraform plan
Le résultat indiquera qu'une ressource (le local_file à l'intérieur de votre module) sera créée.
...
Plan: 1 to add, 0 to change, 0 to destroy.
Changes to Outputs:
+ created_file_path = (known after apply)
...
Maintenant, appliquez la configuration pour créer le fichier. Nous utiliserons l'option -auto-approve pour sauter l'invite de confirmation interactive.
terraform apply -auto-approve
Terraform exécutera le plan et créera le fichier. Le résultat confirmera la création et affichera la valeur de sortie que vous avez définie.
...
module.file_creator_instance.local_file.example: Creating...
module.file_creator_instance.local_file.example: Creation complete after 0s [id=f73598097552a798110a31388c54c1194b539a53]
Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
Outputs:
created_file_path = "./modules/localfile_creator/my_test_file.txt"
Enfin, vérifiez que le fichier a été créé avec le contenu correct. Listez les fichiers dans le répertoire du module, puis affichez le contenu du nouveau fichier.
ls -l modules/localfile_creator/
cat modules/localfile_creator/my_test_file.txt
Le résultat de la commande cat devrait être :
Hello from the root module!
Félicitations, vous avez réussi à créer et à utiliser un module Terraform !