Actualmente estoy aprendiendo Jinja2 y no estoy seguro de cómo hacer frente a las variables de la forma correcta:las variables Jinja2 anidado
Aquí están mis variables en yaml:
---
hosts:
app201.acme.com: {eth0: {ip: 46.0.0.1, netmask: 255.255.255.255}}
graphite.acme.com: {eth0: {ip: 46.0.0.2, netmask: 255.255.255.255},
eth0.1: {ip: 10.2.90.1, netmask: 255.255.255.255}}
y aquí la plantilla Jinja2:
{{ fqdn }}
{% for interface in hosts[fqdn] %}
{{ interface }}
{{ hosts[fqdn].interface.ip }} << doesn't work
{{ hosts[fqdn].{{ interface }}.ip }} << doesn't work
{{ interface.ip }} << doesn't work
{% endfor %}
por lo que actualmente mi salida se ve así porque no puedo acceder a la segunda dimensión del hash yaml.
graphite.acme.com eth0.1
eth0
que funcionó. ¡gracias! – damaex
@ user1436955, bienvenido. Puedes marcarlo como respuesta si crees que esto es lo que estabas buscando. – Vikas
Curiosamente, la interfaz ['ip'] no parece funcionar, creo que la interfaz se trata como una cadena, no como un dict. –