diff --git a/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md b/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md index 4474d2f81bc..f1cec5d64b7 100644 --- a/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md +++ b/ansible_collections/arista/avd/docs/porting-guides/5.x.x.md @@ -53,7 +53,7 @@ The following data model keys have been removed from `eos_designs` in v5.0.0. | Removed key | New key | | ----------- | ------- | | old key 1(cvp_instance_ip) | new key(TODO) | -| old key 2(defs_adapter_config) | new key(TODO) | +| adapter_config.port_channel.short_esi | adapter_config.port_channel.ethernet_segment.short_esi | | old key 3.1(defs_node_type) | new key(TODO) | | old key 3.2(defs_node_type) | new key(TODO) | | old key 4(defs_svi_settings) | new key(TODO) | diff --git a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/configs/host1.cfg b/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/configs/host1.cfg index bebd71c2df7..e8b8b727764 100644 --- a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/configs/host1.cfg +++ b/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/configs/host1.cfg @@ -30,42 +30,11 @@ no aaa root ! vrf instance MGMT ! -interface Port-Channel12 - description server01_ESI_PortChanne1 - no shutdown - switchport - switchport trunk allowed vlan 110-111,210-211 - switchport mode trunk - evpn ethernet-segment - identifier 0000:0000:0303:0202:0101 - route-target import 03:03:02:02:01:01 - lacp system-id 0303.0202.0101 -! -interface Port-Channel13 - description server01_ESI_PortChanne1 - no shutdown - mtu 1601 - switchport - evpn ethernet-segment - identifier 0000:0000:0303:0202:0102 - route-target import 03:03:02:02:01:02 - lacp system-id 0303.0202.0102 -! interface Ethernet10 description ROUTER01_Eth1 no shutdown switchport ! -interface Ethernet12 - description server01_ESI_Eth1 - no shutdown - channel-group 12 mode active -! -interface Ethernet13 - description server01_ESI_Eth6 - no shutdown - channel-group 13 mode active -! interface Loopback0 description EVPN_Overlay_Peering no shutdown diff --git a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/structured_configs/host1.yml b/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/structured_configs/host1.yml index 0d00d86d3a6..cc07803990e 100644 --- a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/structured_configs/host1.yml +++ b/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/intended/structured_configs/host1.yml @@ -117,27 +117,6 @@ vxlan_interface: udp_port: 4789 source_interface: Loopback1 ethernet_interfaces: -- name: Ethernet12 - peer: server01_ESI - peer_interface: Eth1 - peer_type: server - port_profile: TENANT_A_B - description: server01_ESI_Eth1 - shutdown: false - type: port-channel-member - channel_group: - id: 12 - mode: active -- name: Ethernet13 - peer: server01_ESI - peer_interface: Eth6 - peer_type: server - description: server01_ESI_Eth6 - shutdown: false - type: port-channel-member - channel_group: - id: 13 - mode: active - name: Ethernet10 peer: ROUTER01 peer_interface: Eth1 @@ -146,23 +125,3 @@ ethernet_interfaces: description: ROUTER01_Eth1 shutdown: false type: switched -port_channel_interfaces: -- name: Port-Channel12 - description: server01_ESI_PortChanne1 - type: switched - shutdown: false - mode: trunk - vlans: 110-111,210-211 - evpn_ethernet_segment: - identifier: 0000:0000:0303:0202:0101 - route_target: 03:03:02:02:01:01 - lacp_id: 0303.0202.0101 -- name: Port-Channel13 - description: server01_ESI_PortChanne1 - type: switched - shutdown: false - mtu: 1601 - evpn_ethernet_segment: - identifier: 0000:0000:0303:0202:0102 - route_target: 03:03:02:02:01:02 - lacp_id: 0303.0202.0102 diff --git a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/inventory/host_vars/host1/port-channel-short-esi.yml b/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/inventory/host_vars/host1/port-channel-short-esi.yml deleted file mode 100644 index 5fcca3aea6e..00000000000 --- a/ansible_collections/arista/avd/molecule/eos_designs_deprecated_vars/inventory/host_vars/host1/port-channel-short-esi.yml +++ /dev/null @@ -1,26 +0,0 @@ -servers: - - name: server01_ESI - rack: RackC - adapters: - - endpoint_ports: [ Eth1, Eth2] - switch_ports: [ Ethernet12, Ethernet12] - switches: [ host1, Leaf1] - profile: TENANT_A_B - # Testing "port_channel" with "short_esi" - # "port_channel.short_esi" is deprecated in 4.0.0. To be removed in 5.0.0 - port_channel: - description: PortChanne1 - mode: active - short_esi: '0303:0202:0101' - - endpoint_ports: [ Eth6, Eth7 ] - switch_ports: [ Ethernet13, Ethernet13 ] - switches: [ host1, DC1-LEAF2B ] - mtu: 1601 - ethernet_segment: - short_esi: '0303:0202:0102' - # Testing "port_channel" with "short_esi" when "ethernet_segment.short_esi" is defined - # "port_channel.short_esi" is deprecated in 4.0.0. To be removed in 5.0.0 - port_channel: - description: PortChanne1 - mode: active - short_esi: '0303:0202:0101' diff --git a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/connected-endpoints.md b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/connected-endpoints.md index 51d39be514b..d01f481c035 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/connected-endpoints.md +++ b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/connected-endpoints.md @@ -139,7 +139,6 @@ | [          description](## ".[].adapters.[].port_channel.description") | String | | | | By default the description is built leveraging `` name or `adapter.description` when defined.
When this key is defined, it will append its content to the physical port description.
| | [          enabled](## ".[].adapters.[].port_channel.enabled") | Boolean | | `True` | | Port-Channel administrative state.
Setting to false will set port to 'shutdown' in intended configuration.
| | [          ptp_mpass](## ".[].adapters.[].port_channel.ptp_mpass") | Boolean | | `False` | | When MPASS is enabled on an MLAG port-channel, MLAG peers coordinate to function as a single PTP logical device.
Arista PTP enabled devices always place PTP messages on the same physical link within the port-channel.
Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. | - | [          short_esi](## ".[].adapters.[].port_channel.short_esi") deprecated | String | | | | In format xxxx:xxxx:xxxx or "auto".This key is deprecated. Support will be removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [          lacp_fallback](## ".[].adapters.[].port_channel.lacp_fallback") | Dictionary | | | | LACP fallback configuration. | | [            mode](## ".[].adapters.[].port_channel.lacp_fallback.mode") | String | | | Valid Values:
- static
- individual | Either static or individual mode is supported.
If the mode is set to "individual" the "individual.profile" setting must be defined.
| | [            individual](## ".[].adapters.[].port_channel.lacp_fallback.individual") | Dictionary | | | | Define parameters for port-channel member interfaces. Applies only if LACP fallback is set to "individual". | @@ -156,6 +155,7 @@ | [                client_dot1q](## ".[].adapters.[].port_channel.subinterfaces.[].encapsulation_vlan.client_dot1q") | Integer | | | Min: 1
Max: 4094 | | | [          raw_eos_cli](## ".[].adapters.[].port_channel.raw_eos_cli") | String | | | | EOS CLI rendered directly on the port-channel interface in the final EOS configuration. | | [          structured_config](## ".[].adapters.[].port_channel.structured_config") | Dictionary | | | | Custom structured config added under port_channel_interfaces.[name=] for eos_cli_config_gen. | + | [          short_esi](## ".[].adapters.[].port_channel.short_esi") removed | String | | | | In format xxxx:xxxx:xxxx or "auto".This key was removed. Support was removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [        validate_state](## ".[].adapters.[].validate_state") | Boolean | | | | Set to false to disable interface validation by the `eos_validate_state` role. | | [        raw_eos_cli](## ".[].adapters.[].raw_eos_cli") | String | | | | EOS CLI rendered directly on the ethernet interface in the final EOS configuration. | | [        structured_config](## ".[].adapters.[].structured_config") | Dictionary | | | | Custom structured config added under ethernet_interfaces.[name=] for eos_cli_config_gen. | @@ -489,12 +489,6 @@ # Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. ptp_mpass: - # In format xxxx:xxxx:xxxx or "auto". - # This key is deprecated. - # Support will be removed in AVD version 5.0.0. - # Use ethernet_segment.short_esi instead. - short_esi: - # LACP fallback configuration. lacp_fallback: diff --git a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/network-ports.md b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/network-ports.md index 588b6cdc358..cad2276551f 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/network-ports.md +++ b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/network-ports.md @@ -133,7 +133,6 @@ | [      description](## "network_ports.[].port_channel.description") | String | | | | By default the description is built leveraging `` name or `adapter.description` when defined.
When this key is defined, it will append its content to the physical port description.
| | [      enabled](## "network_ports.[].port_channel.enabled") | Boolean | | `True` | | Port-Channel administrative state.
Setting to false will set port to 'shutdown' in intended configuration.
| | [      ptp_mpass](## "network_ports.[].port_channel.ptp_mpass") | Boolean | | `False` | | When MPASS is enabled on an MLAG port-channel, MLAG peers coordinate to function as a single PTP logical device.
Arista PTP enabled devices always place PTP messages on the same physical link within the port-channel.
Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. | - | [      short_esi](## "network_ports.[].port_channel.short_esi") deprecated | String | | | | In format xxxx:xxxx:xxxx or "auto".This key is deprecated. Support will be removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [      lacp_fallback](## "network_ports.[].port_channel.lacp_fallback") | Dictionary | | | | LACP fallback configuration. | | [        mode](## "network_ports.[].port_channel.lacp_fallback.mode") | String | | | Valid Values:
- static
- individual | Either static or individual mode is supported.
If the mode is set to "individual" the "individual.profile" setting must be defined.
| | [        individual](## "network_ports.[].port_channel.lacp_fallback.individual") | Dictionary | | | | Define parameters for port-channel member interfaces. Applies only if LACP fallback is set to "individual". | @@ -150,6 +149,7 @@ | [            client_dot1q](## "network_ports.[].port_channel.subinterfaces.[].encapsulation_vlan.client_dot1q") | Integer | | | Min: 1
Max: 4094 | | | [      raw_eos_cli](## "network_ports.[].port_channel.raw_eos_cli") | String | | | | EOS CLI rendered directly on the port-channel interface in the final EOS configuration. | | [      structured_config](## "network_ports.[].port_channel.structured_config") | Dictionary | | | | Custom structured config added under port_channel_interfaces.[name=] for eos_cli_config_gen. | + | [      short_esi](## "network_ports.[].port_channel.short_esi") removed | String | | | | In format xxxx:xxxx:xxxx or "auto".This key was removed. Support was removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [    validate_state](## "network_ports.[].validate_state") | Boolean | | | | Set to false to disable interface validation by the `eos_validate_state` role. | | [    raw_eos_cli](## "network_ports.[].raw_eos_cli") | String | | | | EOS CLI rendered directly on the ethernet interface in the final EOS configuration. | | [    structured_config](## "network_ports.[].structured_config") | Dictionary | | | | Custom structured config added under ethernet_interfaces.[name=] for eos_cli_config_gen. | @@ -463,12 +463,6 @@ # Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. ptp_mpass: - # In format xxxx:xxxx:xxxx or "auto". - # This key is deprecated. - # Support will be removed in AVD version 5.0.0. - # Use ethernet_segment.short_esi instead. - short_esi: - # LACP fallback configuration. lacp_fallback: diff --git a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/port-profiles.md b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/port-profiles.md index df075c55741..4fcb302b6c5 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/port-profiles.md +++ b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/port-profiles.md @@ -130,7 +130,6 @@ | [      description](## "port_profiles.[].port_channel.description") | String | | | | By default the description is built leveraging `` name or `adapter.description` when defined.
When this key is defined, it will append its content to the physical port description.
| | [      enabled](## "port_profiles.[].port_channel.enabled") | Boolean | | `True` | | Port-Channel administrative state.
Setting to false will set port to 'shutdown' in intended configuration.
| | [      ptp_mpass](## "port_profiles.[].port_channel.ptp_mpass") | Boolean | | `False` | | When MPASS is enabled on an MLAG port-channel, MLAG peers coordinate to function as a single PTP logical device.
Arista PTP enabled devices always place PTP messages on the same physical link within the port-channel.
Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. | - | [      short_esi](## "port_profiles.[].port_channel.short_esi") deprecated | String | | | | In format xxxx:xxxx:xxxx or "auto".This key is deprecated. Support will be removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [      lacp_fallback](## "port_profiles.[].port_channel.lacp_fallback") | Dictionary | | | | LACP fallback configuration. | | [        mode](## "port_profiles.[].port_channel.lacp_fallback.mode") | String | | | Valid Values:
- static
- individual | Either static or individual mode is supported.
If the mode is set to "individual" the "individual.profile" setting must be defined.
| | [        individual](## "port_profiles.[].port_channel.lacp_fallback.individual") | Dictionary | | | | Define parameters for port-channel member interfaces. Applies only if LACP fallback is set to "individual". | @@ -147,6 +146,7 @@ | [            client_dot1q](## "port_profiles.[].port_channel.subinterfaces.[].encapsulation_vlan.client_dot1q") | Integer | | | Min: 1
Max: 4094 | | | [      raw_eos_cli](## "port_profiles.[].port_channel.raw_eos_cli") | String | | | | EOS CLI rendered directly on the port-channel interface in the final EOS configuration. | | [      structured_config](## "port_profiles.[].port_channel.structured_config") | Dictionary | | | | Custom structured config added under port_channel_interfaces.[name=] for eos_cli_config_gen. | + | [      short_esi](## "port_profiles.[].port_channel.short_esi") removed | String | | | | In format xxxx:xxxx:xxxx or "auto".This key was removed. Support was removed in AVD version 5.0.0. Use ethernet_segment.short_esi instead. | | [    validate_state](## "port_profiles.[].validate_state") | Boolean | | | | Set to false to disable interface validation by the `eos_validate_state` role. | | [    raw_eos_cli](## "port_profiles.[].raw_eos_cli") | String | | | | EOS CLI rendered directly on the ethernet interface in the final EOS configuration. | | [    structured_config](## "port_profiles.[].structured_config") | Dictionary | | | | Custom structured config added under ethernet_interfaces.[name=] for eos_cli_config_gen. | @@ -449,12 +449,6 @@ # Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. ptp_mpass: - # In format xxxx:xxxx:xxxx or "auto". - # This key is deprecated. - # Support will be removed in AVD version 5.0.0. - # Use ethernet_segment.short_esi instead. - short_esi: - # LACP fallback configuration. lacp_fallback: diff --git a/python-avd/pyavd/_eos_designs/schema/eos_designs.schema.yml b/python-avd/pyavd/_eos_designs/schema/eos_designs.schema.yml index 87914644204..151825082f4 100644 --- a/python-avd/pyavd/_eos_designs/schema/eos_designs.schema.yml +++ b/python-avd/pyavd/_eos_designs/schema/eos_designs.schema.yml @@ -5199,13 +5199,6 @@ $defs: Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices.' - short_esi: - type: str - description: In format xxxx:xxxx:xxxx or "auto". - deprecation: - warning: true - remove_in_version: 5.0.0 - new_key: ethernet_segment.short_esi lacp_fallback: type: dict description: LACP fallback configuration. @@ -5316,6 +5309,14 @@ $defs: documentation_options: hide_keys: true $ref: eos_cli_config_gen#/keys/port_channel_interfaces/items + short_esi: + type: str + description: In format xxxx:xxxx:xxxx or "auto". + deprecation: + removed: true + warning: true + remove_in_version: 5.0.0 + new_key: ethernet_segment.short_esi validate_state: type: bool description: Set to false to disable interface validation by the `eos_validate_state` diff --git a/python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_adapter_config.schema.yml b/python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_adapter_config.schema.yml index 1f4142272ac..d93365c3221 100644 --- a/python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_adapter_config.schema.yml +++ b/python-avd/pyavd/_eos_designs/schema/schema_fragments/defs_adapter_config.schema.yml @@ -474,13 +474,6 @@ $defs: When MPASS is enabled on an MLAG port-channel, MLAG peers coordinate to function as a single PTP logical device. Arista PTP enabled devices always place PTP messages on the same physical link within the port-channel. Hence, MPASS is needed only on MLAG port-channels connected to non-Arista devices. - short_esi: - type: str - description: In format xxxx:xxxx:xxxx or "auto". - deprecation: - warning: true - remove_in_version: "5.0.0" - new_key: ethernet_segment.short_esi lacp_fallback: type: dict description: LACP fallback configuration. @@ -570,6 +563,14 @@ $defs: documentation_options: hide_keys: true $ref: "eos_cli_config_gen#/keys/port_channel_interfaces/items" + short_esi: + type: str + description: In format xxxx:xxxx:xxxx or "auto". + deprecation: + removed: true + warning: true + remove_in_version: "5.0.0" + new_key: ethernet_segment.short_esi validate_state: type: bool description: Set to false to disable interface validation by the `eos_validate_state` role. diff --git a/python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/utils.py b/python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/utils.py index cfdf3806def..fe6fd8c2a52 100644 --- a/python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/utils.py +++ b/python-avd/pyavd/_eos_designs/structured_config/connected_endpoints/utils.py @@ -103,9 +103,7 @@ def _get_short_esi( # short_esi is only set when called from sub-interface port-channels. if short_esi is None: - # Setting short_esi under port_channel will be removed in AVD5.0 - port_channel_short_esi = get(adapter, "port_channel.short_esi") - if (short_esi := get(adapter, "ethernet_segment.short_esi", default=port_channel_short_esi)) is None: + if (short_esi := get(adapter, "ethernet_segment.short_esi")) is None: return None endpoint_ports: list = adapter.get("endpoint_ports")