diff --git a/ansible_collections/arista/avd/plugins/plugin_utils/eos_designs_shared_utils/platform.py b/ansible_collections/arista/avd/plugins/plugin_utils/eos_designs_shared_utils/platform.py index f713215baee..5f0b4521da6 100644 --- a/ansible_collections/arista/avd/plugins/plugin_utils/eos_designs_shared_utils/platform.py +++ b/ansible_collections/arista/avd/plugins/plugin_utils/eos_designs_shared_utils/platform.py @@ -12,6 +12,10 @@ if TYPE_CHECKING: from .shared_utils import SharedUtils +# Campus platforms are separated out by their ability to support "trident_forwarding_table_partition". +# This is required for EVPN multicast, currently only supported on all 720XP platforms. +# This command is not supported on 710P or 722XP platforms. 720D range has some devices that support this +# and others that don't, but I've grouped them all together as none of them support EVPN multicast. DEFAULT_PLATFORM_SETTINGS = [ { "platforms": ["default"], @@ -32,7 +36,7 @@ }, }, { - "platforms": ["720XP", "722XP"], + "platforms": ["720XP"], "trident_forwarding_table_partition": "flexible exact-match 16384 l2-shared 98304 l3-shared 131072", "reload_delay": { "mlag": 300, @@ -41,7 +45,7 @@ "feature_support": {"queue_monitor_length_notify": False, "poe": True}, }, { - "platforms": ["750", "755", "758"], + "platforms": ["750", "755", "758", "720DP", "722XP", "710P"], "reload_delay": { "mlag": 300, "non_mlag": 330, diff --git a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/platform-settings.md b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/platform-settings.md index 9fd6e08a33e..5e8bfb3a972 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/docs/tables/platform-settings.md +++ b/ansible_collections/arista/avd/roles/eos_designs/docs/tables/platform-settings.md @@ -102,13 +102,34 @@ queue_monitor_length_notify: false platforms: - 7050X3 + reload_delay: + mlag: 300 + non_mlag: 330 + trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 l3-shared + 131072 + - feature_support: + poe: true + queue_monitor_length_notify: false + platforms: - 720XP - - 722XP reload_delay: mlag: 300 non_mlag: 330 trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 l3-shared 131072 + - feature_support: + poe: true + queue_monitor_length_notify: false + platforms: + - '750' + - '755' + - '758' + - 720DP + - 722XP + - 710P + reload_delay: + mlag: 300 + non_mlag: 330 - lag_hardware_only: true platforms: - 7280R diff --git a/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.jsonschema.json b/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.jsonschema.json index ace2dcdb965..b591365a7a9 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.jsonschema.json +++ b/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.jsonschema.json @@ -21251,9 +21251,7 @@ }, { "platforms": [ - "7050X3", - "720XP", - "722XP" + "7050X3" ], "feature_support": { "queue_monitor_length_notify": false @@ -21264,6 +21262,38 @@ }, "trident_forwarding_table_partition": "flexible exact-match 16384 l2-shared 98304 l3-shared 131072" }, + { + "platforms": [ + "720XP" + ], + "feature_support": { + "poe": true, + "queue_monitor_length_notify": false + }, + "reload_delay": { + "mlag": 300, + "non_mlag": 330 + }, + "trident_forwarding_table_partition": "flexible exact-match 16384 l2-shared 98304 l3-shared 131072" + }, + { + "platforms": [ + "750", + "755", + "758", + "720DP", + "722XP", + "710P" + ], + "feature_support": { + "poe": true, + "queue_monitor_length_notify": false + }, + "reload_delay": { + "mlag": 300, + "non_mlag": 330 + } + }, { "platforms": [ "7280R", diff --git a/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.schema.yml b/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.schema.yml index b863ac6fdb1..e9bf14f89e6 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.schema.yml +++ b/ansible_collections/arista/avd/roles/eos_designs/schemas/eos_designs.schema.yml @@ -2222,15 +2222,36 @@ keys: non_mlag: 330 - platforms: - 7050X3 + feature_support: + queue_monitor_length_notify: false + reload_delay: + mlag: 300 + non_mlag: 330 + trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 + l3-shared 131072 + - platforms: - 720XP - - 722XP feature_support: + poe: true queue_monitor_length_notify: false reload_delay: mlag: 300 non_mlag: 330 trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 l3-shared 131072 + - platforms: + - '750' + - '755' + - '758' + - 720DP + - 722XP + - 710P + feature_support: + poe: true + queue_monitor_length_notify: false + reload_delay: + mlag: 300 + non_mlag: 330 - platforms: - 7280R - 7280R2 diff --git a/ansible_collections/arista/avd/roles/eos_designs/schemas/schema_fragments/platform_settings.schema.yml b/ansible_collections/arista/avd/roles/eos_designs/schemas/schema_fragments/platform_settings.schema.yml index d033461bc5b..339834eaaa8 100644 --- a/ansible_collections/arista/avd/roles/eos_designs/schemas/schema_fragments/platform_settings.schema.yml +++ b/ansible_collections/arista/avd/roles/eos_designs/schemas/schema_fragments/platform_settings.schema.yml @@ -98,14 +98,35 @@ keys: non_mlag: 330 - platforms: - 7050X3 + feature_support: + queue_monitor_length_notify: false + reload_delay: + mlag: 300 + non_mlag: 330 + trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 l3-shared 131072 + - platforms: - 720XP - - 722XP feature_support: + poe: true queue_monitor_length_notify: false reload_delay: mlag: 300 non_mlag: 330 trident_forwarding_table_partition: flexible exact-match 16384 l2-shared 98304 l3-shared 131072 + - platforms: + - '750' + - '755' + - '758' + - 720DP + - 722XP + - 710P + feature_support: + poe: true + queue_monitor_length_notify: false + reload_delay: + mlag: 300 + non_mlag: 330 + - platforms: - 7280R - 7280R2