AnsibleUndefinedVariable:“列表对象”没有属性
Yaml模板AnsibleUndefinedVariable:“列表对象”没有属性,ansible,jinja2,Ansible,Jinja2,Yaml模板 bgp: local: 109 remote: 109 site: - neighbor: peer_ip: [ 172.16.110.3, 172.16.110.4 ] vpnv4: vrf: Site-1 network: 109.10.1.1 mask: 255.255.255.0
bgp:
local: 109
remote: 109
site:
- neighbor:
peer_ip: [ 172.16.110.3, 172.16.110.4 ]
vpnv4:
vrf: Site-1
network: 109.10.1.1
mask: 255.255.255.0
- neighbor:
peer_ip: [ 172.16.120.3, 172.16.120.4 ]
vpnv4:
vrf: Site-2
network: 109.10.1.1
mask: 255.255.255.0
Jinja2模板
router bgp {{ item.bgp.local }}
{% for i in item.bgp.site %}
address-family ipv4 vrf {{ i.vpnv4.vrf }}
network {{ i.vpnv4.network }} mask {{ i.vpnv4.mask }}
{% for b in item.bgp.site.neighbor.peer_ip %}
neighbor {{ b }} remote-as {{ item.bgp.remote }}
neighbor {{ b }} activate
{% endfor %}
{% endfor %}
如果我删除这个,它会工作。我怀疑列表有问题,但不知道如何解决
{% for b in item.bgp.site.neighbor.peer_ip %}
neighbor {{ b }} remote-as {{ item.bgp.remote }}
neighbor {{ b }} activate
{% endfor %}
item.bgp.site实际上是您的外部循环的i
Try:{%forb in i.neighbor.peer_ip%}您指的是哪个列表?你如何调用ansible?