Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat(eos_cli_config_gen): Adding improved model for interface link tracking groups #4610

Merged
merged 14 commits into from
Nov 11, 2024
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 }}
MaheshGSLAB marked this conversation as resolved.
Show resolved Hide resolved
{% 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
Loading