{% for network_name, network_details in _cifmw_ci_multus_net_info.items() %} {% if network_details.tools.get('multus', {}).get('multus_type', None) %} {% set multus_type = network_details.tools.multus.multus_type %} {% else %} {% set multus_type = cifmw_ci_multus_default_nad_type %} {% endif %} {% if network_details.tools.get('multus', {}).get('multus_attach', None) %} {% set multus_attach = network_details.tools.multus.multus_attach %} {% else %} {% set multus_attach = cifmw_ci_multus_default_bridge_attach %} {% endif %} --- apiVersion: k8s.cni.cncf.io/v1 kind: NetworkAttachmentDefinition metadata: labels: osp/net: {{ network_name }} name: {{ network_name }} namespace: {{ cifmw_ci_multus_namespace }} spec: config: | { "cniVersion": "{{ cifmw_ci_multus_cniversion }}", "name": "{{ network_name }}", "type": "{{ multus_type }}", {% if multus_type == "macvlan" %} "master": "{{ network_details.interface_name }}", {% endif %} {% if multus_type == "bridge" %} {% if multus_attach == "interface" %} "bridge": "{{ network_details.interface_name }}", {% elif multus_attach == "linux-bridge" %} "bridge": "{{ network_name }}", {% endif %} {% endif %} "ipam": { "type": "{{ cifmw_ci_multus_default_nad_ipam_type }}", {% if cifmw_ci_multus_default_nad_ipam_type == "whereabouts" %} {% if cifmw_ci_multus_default_nad_ipam_type_ip_version == "v4" %} "range": "{{ network_details.network_v4 }}", "range_start": "{{ network_details.tools.multus.ipv4_ranges[0].start }}", "range_end": "{{ network_details.tools.multus.ipv4_ranges[0].end }}" {% elif cifmw_ci_multus_default_nad_ipam_type_ip_version == "v6" %} "range": "{{ network_details.network_v6 }}", "range_start": "{{ network_details.tools.multus.ipv6_ranges[0].start }}", "range_end": "{{ network_details.tools.multus.ipv6_ranges[0].end }}" {% endif %} {% endif %} } } {% endfor %}