monolithprojects.tfvars2facts
Tfvars2facts (Rôle Ansible)
Ce rôle Ansible traduit le fichier tfvars de Terraform en faits locaux Ansible.
Le résultat est enregistré sur l'hôte distant dans le répertoire /etc/ansib.e/facts.d/ au format JSON.
Vous pouvez interroger les variables tfvars dans Ansible en utilisant la syntaxe {{ ansible_local['tfvars']['ma_variable'] }}
.
Remarque :
Comme les noms de variables Ansible ne peuvent pas contenir de tiret, les tirets seront remplacés par des underscores.
Par exemple, mon-var-1
deviendra mon_var_1
.
Exigences
Ansible 2.8+
Le rôle doit être exécuté en mode privilégié (
become: yes
)
Variables du rôle
Ceci est un extrait de defaults/main.yml
# Chemin vers les faits locaux Ansible
local_facts_path: /etc/ansible/facts.d
# Nom du fichier de faits locaux. Si changé par exemple en "fichier_different.facts",
# la clé sera également {{ ansible_local['fichier_different']['some_variable'] }}
local_facts_file: tfvars.fact
# Activer s'il est utilisé avec DT Pan-Net ALiEn (Application Lifecycle Engine)
ALiEn: false
# Chemin vers le fichier de variables Terraform
# (omis si la variable ALiEn est vraie)
tfvars_path: files
# Nom du fichier de variables Terraform
tfvars_file: vars.tfvars
# Recharger les faits Ansible après la création des faits locaux
reload_facts: false
Exemple de Playbook
Dans cet exemple, le rôle traduira les variables Terraform dans files/vars.tfvars
et les téléchargera en tant que fichier de faits Ansible sur les hôtes distants.
Le rôle rechargera également les faits Ansible, afin que les nouveaux faits soient prêts pour le prochain rôle/post_task.
---
- name: Exemple Simple
hosts: all
become: yes
vars:
reload_facts: yes
roles:
- role: ansible-tfvars2facts
Licence
MIT
Informations sur l'auteur
Créé en 2020 par Michal Muransky/DT Pan-Net
Translate the Terraform tfvars to the Ansible local facts.
ansible-galaxy install monolithprojects.tfvars2facts