Skip processing network info if not defined

If role_networks or network_cidrs is not defined, the jinja parsing
fails because NoneType is not iterable when doing a
'if value in none_type_var'

Change-Id: I477f0b840b2a0d2646ba947a88f5264d330ea4eb
Closes-Bug: #1837644
This commit is contained in:
Alex Schultz 2019-07-23 10:47:02 -06:00
parent 46a6432a6e
commit 81738cda4d
2 changed files with 4 additions and 2 deletions

View File

@ -1,11 +1,13 @@
{
"fqdn_ctlplane": "{{ inventory_hostname ~ '.ctlplane.' ~ cloud_domain }}",
"fqdn_canonical": "{{ inventory_hostname ~ '.' ~ cloud_domain }}"{% if enabled_networks | length > 0 and role_networks | length > 0 %},{% endif %}
"fqdn_canonical": "{{ inventory_hostname ~ '.' ~ cloud_domain }}"{% if enabled_networks | length > 0 and role_networks and role_networks | length > 0 %},{% endif %}
{% if role_networks %}
{% for network in enabled_networks %}
{% if network in role_networks %}
"fqdn_{{ networks[network]['name_lower'] }}": "{{ inventory_hostname ~ '.' ~ network | lower ~ '.' ~ cloud_domain }}"
{%- endif %}{% if not loop.last and loop.nextitem | default("") in role_networks %},
{% endif %}
{%- endfor %}
{% endif %}
}

View File

@ -3,7 +3,7 @@
"ctlplane_subnet": "{{ ctlplane_ip ~ '/' ~ ctlplane_subnet_cidr }}",
"ctlplane_uri": "{{ ctlplane_ip | ipwrap }}"{% if enabled_networks | length > 0 %},{% endif %}
{%- for network in enabled_networks %}
{%- if network ~ '_cidr' in network_cidrs %}
{%- if network_cidrs and network ~ '_cidr' in network_cidrs %}
"{{ networks[network]['name'] }}": "{{ hostvars[inventory_hostname][networks[network]['name'] ~ '_ip'] }}",
"{{ networks[network]['name'] }}_subnet": "{{ hostvars[inventory_hostname][networks[network]['name'] ~ '_ip'] ~ '/' ~ network_cidrs[network ~ '_cidr'] }}",
"{{ networks[network]['name'] }}_uri": "{{ hostvars[inventory_hostname][networks[network]['name'] ~ '_ip'] | ipwrap }}"{% if not loop.last %},{% endif %}