monolithprojects.tfvars2facts
Tfvars2facts (Rol de Ansible)
Este rol de Ansible traduce el archivo tfvars de Terraform a Ansible Local Facts.
El resultado se guarda en el/los host(s) remoto(s) en el directorio /etc/ansible/facts.d/ como un archivo JSON.
Puedes consultar las variables de tfvars en Ansible con la siguiente sintaxis {{ ansible_local['tfvars']['mi_variable'] }}
.
Nota:
Dado que los nombres de las variables de Ansible no pueden contener el signo de guion, el signo de guion se reemplazará por un guion bajo.
Por ejemplo, mi-var-1
será mi_var_1
.
Requisitos
Ansible 2.8+
El rol debe ejecutarse en modo privilegiado (
become: yes
)
Variables del Rol
Esta es una copia de defaults/main.yml
# Ruta a los hechos locales de Ansible
local_facts_path: /etc/ansible/facts.d
# Nombre del archivo de hechos locales. Si se cambia, por ejemplo a "diferent_file.facts",
# también la clave será {{ ansible_local['different_file']['alguna_variable'] }}
local_facts_file: tfvars.fact
# Habilitar si se usa con DT Pan-Net ALiEn (Motor de Ciclo de Vida de Aplicaciones)
ALiEn: false
# Ruta al archivo de variables de Terraform
# (omitido si la variable ALiEn es verdadera)
tfvars_path: files
# Nombre del archivo de variables de Terraform
tfvars_file: vars.tfvars
# Recargar los hechos de Ansible después de que se hayan creado los hechos locales
reload_facts: false
Ejemplo de Playbook
En este ejemplo, el rol traducirá las variables de Terraform en files/vars.tfvars
y las subirá como un archivo de hechos de Ansible a los hosts remotos.
El rol también recargará los Hechos de Ansible, para que los nuevos hechos estén listos para el siguiente rol/post_tarea.
---
- name: Ejemplo Simple
hosts: all
become: yes
vars:
reload_facts: yes
roles:
- role: ansible-tfvars2facts
Licencia
MIT
Información del Autor
Creado en 2020 por Michal Muransky/DT Pan-Net
Translate the Terraform tfvars to the Ansible local facts.
ansible-galaxy install monolithprojects.tfvars2facts