monolithprojects.tfvars2facts
Tfvars2facts (Ansible-Rolle)
Diese Ansible-Rolle übersetzt die Terraform tfvars-Datei in Ansible lokale Fakten. Das Ergebnis wird auf dem/die entfernten Host(s) im Verzeichnis /etc/ansible/facts.d/ als JSON-Datei gespeichert.
Sie können die tfvars-Variablen in Ansible mit der folgenden Syntax abfragen: {{ ansible_local['tfvars']['my_variable'] }}
.
Hinweis:
Da Ansible-Variablennamen kein Minuszeichen enthalten können, werden diese durch Unterstriche ersetzt.
Zum Beispiel wird my-var-1
zu my_var_1
.
Anforderungen
Ansible 2.8+
Die Rolle muss im privilegierten Modus ausgeführt werden (
become: yes
)
Rollenvariablen
Dies ist eine Kopie von defaults/main.yml
# Pfad zu Ansible lokalen Fakten
local_facts_path: /etc/ansible/facts.d
# Name der lokalen Fakten-Datei. Wenn geändert, zum Beispiel in "andere_datei.facts",
# wird auch der Schlüssel {{ ansible_local['andere_datei']['some_variable'] }} sein
local_facts_file: tfvars.fact
# Aktivieren, wenn sie mit DT Pan-Net ALiEn (Application Lifecycle Engine) verwendet wird
ALiEn: false
# Pfad zur Terraform-Variablen-Datei
# (wird weggelassen, wenn die Variable ALiEn wahr ist)
tfvars_path: files
# Name der Terraform-Variablen-Datei
tfvars_file: vars.tfvars
# Ansible-Fakten nach der Erstellung lokaler Fakten neu laden
reload_facts: false
Beispiel-Playbook
In diesem Beispiel wird die Rolle die Terraform-Variablen in files/vars.tfvars
übersetzen und als Ansible-Fakten-Datei auf die entfernten Hosts hochladen.
Die Rolle wird auch die Ansible-Fakten neu laden, sodass die neuen Fakten für die nächste Rolle/nach Aufgabe bereit sind.
---
- name: Einfaches Beispiel
hosts: all
become: yes
vars:
reload_facts: yes
roles:
- role: ansible-tfvars2facts
Lizenz
MIT
Autoreninformation
Erstellt im Jahr 2020 von Michal Muransky/DT Pan-Net
Translate the Terraform tfvars to the Ansible local facts.
ansible-galaxy install monolithprojects.tfvars2facts