Skip to content

Commit

Permalink
Feat(eos_cli_config_gen): Adding improved model for interface link tr…
Browse files Browse the repository at this point in the history
…acking groups (aristanetworks#4610)
  • Loading branch information
Vibhu-gslab authored Nov 11, 2024
1 parent 9927023 commit 889906f
Show file tree
Hide file tree
Showing 13 changed files with 108 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1020,6 +1020,7 @@ interface Dps1
| Interface | Group Name | Direction |
| --------- | ---------- | --------- |
| Ethernet1 | EVPN_MH_ES1 | upstream |
| Ethernet1 | EVPN_MH_ES3, EVPN_MH_ES4 | upstream |
| Ethernet3 | EVPN_MH_ES2 | downstream |

##### Phone Interfaces
Expand Down Expand Up @@ -1253,6 +1254,8 @@ interface Ethernet1
switchport backup initial-mac-move-delay 10
switchport backup dest-macaddr 01:00:00:00:00:00
link tracking group EVPN_MH_ES1 upstream
link tracking group EVPN_MH_ES3 upstream
link tracking group EVPN_MH_ES4 upstream
comment
Comment created from eos_cli under ethernet_interfaces.Ethernet1
EOF
Expand Down Expand Up @@ -2190,6 +2193,7 @@ interface Ethernet81/10
| Interface | Group Name | Direction |
| --------- | ---------- | --------- |
| Port-Channel5 | EVPN_MH_ES1 | downstream |
| Port-Channel5 | EVPN_MH_ES3, EVPN_MH_ES4 | downstream |
| Port-Channel15 | EVPN_MH_ES2 | upstream |

##### IPv4
Expand Down Expand Up @@ -2275,6 +2279,8 @@ interface Port-Channel5
storm-control multicast level 1
storm-control unknown-unicast level 1
link tracking group EVPN_MH_ES1 downstream
link tracking group EVPN_MH_ES3 downstream
link tracking group EVPN_MH_ES4 downstream
comment
Comment created from eos_cli under port_channel_interfaces.Port-Channel5
EOF
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,8 @@ interface Port-Channel5
storm-control multicast level 1
storm-control unknown-unicast level 1
link tracking group EVPN_MH_ES1 downstream
link tracking group EVPN_MH_ES3 downstream
link tracking group EVPN_MH_ES4 downstream
comment
Comment created from eos_cli under port_channel_interfaces.Port-Channel5
EOF
Expand Down Expand Up @@ -888,6 +890,8 @@ interface Ethernet1
switchport backup initial-mac-move-delay 10
switchport backup dest-macaddr 01:00:00:00:00:00
link tracking group EVPN_MH_ES1 upstream
link tracking group EVPN_MH_ES3 upstream
link tracking group EVPN_MH_ES4 upstream
comment
Comment created from eos_cli under ethernet_interfaces.Ethernet1
EOF
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ ethernet_interfaces:
link_tracking_groups:
- name: EVPN_MH_ES1
direction: upstream
link_tracking:
direction: upstream
groups: [EVPN_MH_ES3, EVPN_MH_ES4]
priority_flow_control:
enabled: true
priorities:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ port_channel_interfaces:
link_tracking_groups:
- name: EVPN_MH_ES1
direction: downstream
link_tracking:
direction: downstream
groups: [EVPN_MH_ES3, EVPN_MH_ES4]
switchport:
enabled: true
mode: trunk
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,9 @@
| {{ link_tracking_interface.name }} | {{ link_tracking_group.name }} | {{ link_tracking_group.direction }} |
{% endif %}
{% endfor %}
{% if link_tracking_interface.link_tracking.direction is arista.avd.defined and link_tracking_interface.link_tracking.groups is arista.avd.defined %}
| {{ link_tracking_interface.name }} | {{ link_tracking_interface.link_tracking.groups | join(', ') }} | {{ link_tracking_interface.link_tracking.direction }} |
{% endif %}
{% endfor %}
{% endif %}
{# Phone Interfaces #}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -291,6 +291,9 @@
| {{ link_tracking_interface.name }} | {{ link_tracking_group.name }} | {{ link_tracking_group.direction }} |
{% endif %}
{% endfor %}
{% if link_tracking_interface.link_tracking.direction is arista.avd.defined and link_tracking_interface.link_tracking.groups is arista.avd.defined %}
| {{ link_tracking_interface.name }} | {{ link_tracking_interface.link_tracking.groups | join(', ') }} | {{ link_tracking_interface.link_tracking.direction }} |
{% endif %}
{% endfor %}
{% endif %}
{# IPv4 #}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -907,6 +907,11 @@ interface {{ ethernet_interface.name }}
link tracking group {{ link_tracking_group.name }} {{ link_tracking_group.direction }}
{% endif %}
{% endfor %}
{% if ethernet_interface.link_tracking.direction is arista.avd.defined and ethernet_interface.link_tracking.groups is arista.avd.defined %}
{% for group_name in ethernet_interface.link_tracking.groups %}
link tracking group {{ group_name }} {{ ethernet_interface.link_tracking.direction }}
{% endfor %}
{% endif %}
{% if ethernet_interface.vmtracer is arista.avd.defined(true) %}
vmtracer vmware-esx
{% endif %}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -726,6 +726,11 @@ interface {{ port_channel_interface.name }}
link tracking group {{ link_tracking_group.name }} {{ link_tracking_group.direction }}
{% endif %}
{% endfor %}
{% if port_channel_interface.link_tracking.direction is arista.avd.defined and port_channel_interface.link_tracking.groups is arista.avd.defined %}
{% for group_name in port_channel_interface.link_tracking.groups %}
link tracking group {{ group_name }} {{ port_channel_interface.link_tracking.direction }}
{% endfor %}
{% endif %}
{% if port_channel_interface.vmtracer is arista.avd.defined(true) %}
vmtracer vmware-esx
{% endif %}
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,18 @@ keys:
direction:
type: str
valid_values: ["upstream", "downstream"]
link_tracking:
type: dict
keys:
direction:
type: str
valid_values: ["upstream", "downstream"]
groups:
type: list
description: Link state group(s) an interface belongs to.
items:
type: str
description: Group names.
evpn_ethernet_segment:
type: dict
keys:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,18 @@ keys:
valid_values:
- upstream
- downstream
link_tracking:
type: dict
keys:
direction:
type: str
valid_values: ["upstream", "downstream"]
groups:
type: list
description: Link state group(s) an interface belongs to.
items:
type: str
description: Group names.
phone:
type: dict
deprecation:
Expand Down

0 comments on commit 889906f

Please sign in to comment.