+{%- if config_phase != 'setup' %}
+{#- configure caas provider network interfaces -#}
+{%- for iface,value in host_provider_network_interfaces.iteritems() if 'caas' in value['type'] %}
+ {%- if not loopvar.first_entry %},{%- endif %}
+ {%- if loopvar.update({'first_entry': False}) %}{%- endif %}
+ {%- set ifacevars = {'mtu': 0} %}
+ {
+ "name": "{{iface}}",
+ {%- for mapped_net in value['provider_networks'] %}
+ {%- for net,info in host_networking['provider_networks'].iteritems() if net == mapped_net %}
+ {%- if 'mtu' in info %}
+ {%- if info['mtu'] > ifacevars.mtu %}
+ {%- if ifacevars.update({'mtu': info['mtu']}) %}{%- endif %}
+ {%- endif %}
+ {%- elif default_mtu > ifacevars.mtu %}
+ {%- if ifacevars.update({'mtu': default_mtu}) %}{%- endif %}
+ {%- endif %}
+ {%- endfor %}
+ {%- endfor %}
+ {%- if 'bond' in iface %}
+ {%- for bond,slaves in host_bonding_interfaces.iteritems() if bond == iface %}
+ {%- for slave in slaves %}
+ {%- if slave in sriov_mtus and sriov_mtus[slave] > ifacevars.mtu %}
+ {%- if ifacevars.update({'mtu': sriov_mtus[slave]}) %}{%- endif %}
+ {%- endif %}
+ {%- endfor %}
+ "type": "linux_bond",
+ "mtu": {{ifacevars.mtu}},
+ {%- if 'linux_bonding_options' in host_network_profile_value %}
+ "bonding_options": "{{ generate_linux_bonding_options(host_network_profile_value['linux_bonding_options']) }}",
+ {%- endif %}
+ "members": [ {% for slave in slaves %}
+ {%- if configured_phys_ifaces.append(slave) %}{%- endif %}
+ {
+ "name": "{{slave}}",
+ "type": "interface",
+ "mtu": {{ifacevars.mtu}},
+ "use_dhcp": false
+ }
+ {% if not loop.last %},{% endif %}
+ {%- endfor %}
+ ],
+ {%- endfor %}
+ {%- else %}
+ {%- if configured_phys_ifaces.append(iface) %}{%- endif %}
+ {%- if iface in sriov_mtus and sriov_mtus[iface] > ifacevars.mtu %}
+ {%- if ifacevars.update({'mtu': sriov_mtus[iface]}) %}{%- endif %}
+ {%- endif %}
+ "type": "interface",
+ {%- endif %}
+ "mtu": {{ifacevars.mtu}},
+ "use_dhcp": false
+ }
+{%- endfor %}
+{%- endif %}{#- if config_phase != 'setup' -#}
+