-
Notifications
You must be signed in to change notification settings - Fork 27
Expand file tree
/
Copy pathndfc_interface_po_routed.j2
More file actions
44 lines (43 loc) · 2.34 KB
/
Copy pathndfc_interface_po_routed.j2
File metadata and controls
44 lines (43 loc) · 2.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
---
# This NDFC routed interface port-channel data structure is auto-generated
# DO NOT EDIT MANUALLY
#
{% for switch in data_model_extended.vxlan.topology.switches %}
{% if switch.interfaces is defined %}
{% for interface in switch['interfaces'] %}
{% if interface['mode'] == 'routed_po' %}
- name: {{ interface['name'] }}
type: pc
switch:
{% if switch.management.management_ipv4_address is defined %}
- {{ switch.management.management_ipv4_address}}
{% elif (switch.management.management_ipv4_address is not defined) and (switch.management.management_ipv6_address is defined) %}
- {{ switch.management.management_ipv6_address}}
{% endif %}
deploy: false
profile:
admin_state: {{ interface['enabled'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_routed_po_interface.enabled) | lower }}
mode: 'l3'
{% if interface['ipv4_address'] is defined %}
{% set ipv4_address__mask = interface['ipv4_address'].split('/') %}
ipv4_addr: {{ ipv4_address__mask[0] | default(omit) }}
ipv4_mask_len: {{ ipv4_address__mask[1] | default(omit) }}
{% endif %}
description: "{{ interface['description'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_routed_po_interface.description) }}"
route_tag: {{ interface['ipv4_route_tag'] | default(omit) }}
int_vrf: {{ interface['vrf'] | default(omit) }}
mtu: {{ interface['mtu'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_routed_po_interface.mtu) }}
speed: {{ interface['speed'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_routed_po_interface.speed) }}
pc_mode: "{{ interface['pc_mode'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_routed_po_interface.pc_mode) }}"
members: {{ interface['members'] | default(omit) }}
enable_qos: {{ interface['enable_qos'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_access_po_interface.enable_qos) | lower }}
{% if interface['enable_qos'] | default(defaults.vxlan.topology.switches.interfaces.topology_switch_access_po_interface.enable_qos) %}
qos_policy: {{ interface['qos_policy'] | default("") }}
queuing_policy: {{ interface['queuing_policy'] | default("") }}
{% endif %}
cmds: |2-
{{ interface['freeform_config'] | default('') | indent(6, false) }}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}