Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
7325e88
Refactor(eos_designs): Move platform_settings.validate_hardware to va…
MaheshGSLAB Dec 16, 2025
9eda939
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 16, 2025
f46b0b9
updated the code to fix the default
MaheshGSLAB Dec 16, 2025
4a5574f
improve the code
MaheshGSLAB Dec 16, 2025
cda7c88
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 16, 2025
54d4ebe
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 16, 2025
d7c5012
added more unit tests
MaheshGSLAB Dec 16, 2025
db51f62
updated code for full coverage
MaheshGSLAB Dec 16, 2025
d3f7ba9
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 18, 2025
b6a17e4
Apply suggestions from code review
Shivani-gslab Dec 18, 2025
67fd307
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 18, 2025
500b425
created the utils under metadata
MaheshGSLAB Dec 23, 2025
80dff70
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 23, 2025
fe789cf
updated the schema, unit tests and code
MaheshGSLAB Dec 31, 2025
f5c612f
Update ansible_collections/arista/avd/extensions/molecule/eos_designs…
MaheshGSLAB Dec 31, 2025
733e9b2
Merge branch 'devel' into issue-6243
MaheshGSLAB Dec 31, 2025
4078cdc
Merge branch 'devel' into issue-6243
gmuloc Jan 2, 2026
7220948
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jan 2, 2026
29d5612
Apply suggestions from code review
MaheshGSLAB Jan 5, 2026
204f00a
Merge branch 'devel' into issue-6243
gmuloc Jan 5, 2026
d3e2562
Merge branch 'devel' into issue-6243
MaheshGSLAB Jan 7, 2026
71a1b79
updated the descriptions
MaheshGSLAB Jan 7, 2026
2f04ddf
Merge branch 'devel' into issue-6243
carl-baillargeon Jan 7, 2026
9d94078
Move kernel_ecmp_cli to another doc section
carl-baillargeon Jan 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -82,13 +82,6 @@ local_users:
privilege: 15
role: network-admin
sha512_password: $6$7u4j1rkb3VELgcZE$EJt2Qff8kd/TapRoci0XaIZsL4tFzgq1YZBLD9c6f/knXzvcYY0NcMKndZeCv0T268knGKhOEwZAxqKjlMm920
logging:
vrfs:
- name: MGMT
source_interface: Management1
hosts:
- name: graylog-server
protocol: udp
loopback_interfaces:
- name: Loopback0
description: ROUTER_ID
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ l3leaf:
virtual_router_mac_address: 00:1c:73:00:00:99
spanning_tree_priority: 4096
spanning_tree_mode: mstp
validation_profile: profile1

node_groups:
- group: DC1_L3_LEAF1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ spine:
- name: dc1-spine1
id: 1
mgmt_ip: 172.16.1.11/24
validation_profile: profile2
# Custom BGP configuration for BGP tests
structured_config:
router_bgp:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ l2leaf:
defaults:
platform: vEOS-lab
spanning_tree_mode: mstp
validation_profile: profile1

node_groups:
- group: DC2_L2_LEAF1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,10 +113,16 @@ custom_platform_settings:
non_mlag: 330
digital_twin:
act_node_type: veos
validate_hardware:

validation_profiles:
- name: profile1
hardware:
min_power_supplies: 2
min_fans: 4
min_supervisors: 0
min_line_cards: 0
transceiver_manufacturers:
- Third-party vendor
- name: profile2
logging:
validate_no_errors_period: 1

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
type: l3leaf
l3leaf:
defaults:
platform: vEOS-LAB
loopback_ipv4_pool: 192.168.255.0/24
vtep_loopback_ipv4_pool: 192.168.254.0/24
bgp_as: 65101
nodes:
- name: missing-validation-parent-profile
id: 1
mgmt_ip: 192.168.200.105/24
validation_profile: profile1

validation_profiles:
- name: profile1
parent_profile: profile2
hardware:
min_power_supplies: 2

expected_error_message: >-
Parent validation profile 'profile2' referenced by validation profile 'profile1' is not defined under 'validation_profiles'.
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
type: l3leaf
l3leaf:
defaults:
platform: vEOS-LAB
loopback_ipv4_pool: 192.168.255.0/24
vtep_loopback_ipv4_pool: 192.168.254.0/24
bgp_as: 65101
nodes:
- name: missing-validation-profile
id: 1
mgmt_ip: 192.168.200.105/24
validation_profile: profile1

validation_profiles:
- name: profile2
hardware:
min_power_supplies: 2

expected_error_message: >-
Validation profile 'profile1' referenced in node configuration is not defined under 'validation_profiles'.
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,8 @@ all:
incorrect-downlink-link-tracking-group:
missing-sflow-setting-destination-vrf:
missing-cv-settings-for-sflow-export-cloudvision-vrf:
missing-validation-profile:
missing-validation-parent-profile:

children:
FABRIC_MISSING_IP_ADDRESS_ON_WAN_LAN_HA_UPLINK:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
!
no enable password
no aaa root
!
vlan internal order ascending range 1006 1199
!
transceiver qsfp default-mode 4x10G
!
service routing protocols model multi-agent
!
hostname validation-profiles
!
vrf instance MGMT
!
interface Loopback0
description ROUTER_ID
no shutdown
ip address 192.168.255.1/32
!
interface Loopback1
description VXLAN_TUNNEL_SOURCE
no shutdown
ip address 192.168.254.1/32
!
interface Management1
description OOB_MANAGEMENT
no shutdown
vrf MGMT
ip address 192.168.200.105/24
!
interface Vxlan1
description validation-profiles_VTEP
vxlan source-interface Loopback1
vxlan udp-port 4789
!
ip routing
no ip routing vrf MGMT
!
ip prefix-list PL-LOOPBACKS-EVPN-OVERLAY
seq 10 permit 192.168.255.0/24 eq 32
seq 20 permit 192.168.254.0/24 eq 32
!
route-map RM-CONN-2-BGP permit 10
match ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY
!
router bfd
multihop interval 300 min-rx 300 multiplier 3
!
router bgp 65101
router-id 192.168.255.1
update wait-install
no bgp default ipv4-unicast
maximum-paths 4
neighbor EVPN-OVERLAY-PEERS peer group
neighbor EVPN-OVERLAY-PEERS update-source Loopback0
neighbor EVPN-OVERLAY-PEERS bfd
neighbor EVPN-OVERLAY-PEERS ebgp-multihop 3
neighbor EVPN-OVERLAY-PEERS send-community
neighbor EVPN-OVERLAY-PEERS maximum-routes 0
neighbor IPv4-UNDERLAY-PEERS peer group
neighbor IPv4-UNDERLAY-PEERS send-community
neighbor IPv4-UNDERLAY-PEERS maximum-routes 12000
redistribute connected route-map RM-CONN-2-BGP
!
address-family evpn
neighbor EVPN-OVERLAY-PEERS activate
!
address-family ipv4
no neighbor EVPN-OVERLAY-PEERS activate
neighbor IPv4-UNDERLAY-PEERS activate
!
end
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ metadata:
platform: 7010TX
fabric_name: EOS_DESIGNS_UNIT_TESTS
validate_hardware:
enabled: true
min_power_supplies: 2
min_fans: 4
min_supervisors: 2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ metadata:
platform: 7010TX
fabric_name: EOS_DESIGNS_UNIT_TESTS
validate_hardware:
enabled: true
min_power_supplies: 2
min_fans: 4
min_supervisors: 2
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
aaa_root:
disabled: true
config_end: true
enable_password:
disabled: true
hostname: validation-profiles
ip_igmp_snooping:
globally_enabled: true
ip_routing: true
loopback_interfaces:
- name: Loopback0
description: ROUTER_ID
shutdown: false
ip_address: 192.168.255.1/32
- name: Loopback1
description: VXLAN_TUNNEL_SOURCE
shutdown: false
ip_address: 192.168.254.1/32
management_interfaces:
- name: Management1
description: OOB_MANAGEMENT
shutdown: false
vrf: MGMT
ip_address: 192.168.200.105/24
type: oob
metadata:
is_deployed: true
platform: vEOS-LAB
fabric_name: EOS_DESIGNS_UNIT_TESTS
validate_hardware:
min_power_supplies: 2
min_fans: 4
min_supervisors: 2
min_line_cards: 10
min_fabric_cards: 5
transceiver_manufacturers:
- Third-party vendor profile1
validate_no_errors_period: 2
exclude_as_extra_fabric_validation_target: true
prefix_lists:
- name: PL-LOOPBACKS-EVPN-OVERLAY
sequence_numbers:
- sequence: 10
action: permit 192.168.255.0/24 eq 32
- sequence: 20
action: permit 192.168.254.0/24 eq 32
route_maps:
- name: RM-CONN-2-BGP
sequence_numbers:
- sequence: 10
type: permit
match:
- ip address prefix-list PL-LOOPBACKS-EVPN-OVERLAY
router_bfd:
multihop:
interval: 300
min_rx: 300
multiplier: 3
router_bgp:
as: '65101'
router_id: 192.168.255.1
maximum_paths:
paths: 4
updates:
wait_install: true
bgp:
default:
ipv4_unicast: false
peer_groups:
- name: IPv4-UNDERLAY-PEERS
metadata:
type: ipv4
send_community: all
maximum_routes: 12000
- name: EVPN-OVERLAY-PEERS
metadata:
type: evpn
update_source: Loopback0
bfd: true
ebgp_multihop: 3
send_community: all
maximum_routes: 0
redistribute:
connected:
enabled: true
route_map: RM-CONN-2-BGP
address_family_evpn:
peer_groups:
- name: EVPN-OVERLAY-PEERS
activate: true
address_family_ipv4:
peer_groups:
- name: IPv4-UNDERLAY-PEERS
activate: true
- name: EVPN-OVERLAY-PEERS
activate: false
service_routing_protocols_model: multi-agent
transceiver_qsfp_default_mode_4x10: true
vlan_internal_order:
allocation: ascending
range:
beginning: 1006
ending: 1199
vrfs:
- name: MGMT
ip_routing: false
vxlan_interface:
vxlan1:
description: validation-profiles_VTEP
vxlan:
source_interface: Loopback1
udp_port: 4789
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,23 @@ platform_settings:
enabled: true
description: Structured config for platform matching the regex
# Test for validate hardware disabled
validate_hardware:
enabled: false
feature_support:
hardware_validation: false
- platforms:
- 7010TX
feature_support:
queue_monitor_length_notify: false
per_interface_mtu: false
hardware_validation: true
reload_delay:
mlag: 300
non_mlag: 330
digital_twin:
platform: vEOS-lab
# Test for validate hardware enabled with specific requirements
validate_hardware:
enabled: true # default

validation_profiles:
- name: profile1
hardware:
min_power_supplies: 2
min_fans: 4
min_supervisors: 2
Expand All @@ -40,6 +42,8 @@ l3leaf:
loopback_ipv4_offset: 32
vtep_loopback_ipv4_pool: 192.168.254.0/24
mlag_interfaces: [Ethernet5, Ethernet6]
# Test for validate hardware enabled with specific requirements
validation_profile: profile1
node_groups:
- group: MLAG_PER_MTU_INTERFACE
bgp_as: 923
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,14 @@ spine:
loopback_ipv4_pool: 10.10.255.0/24
bgp_as: 65000
rack: ABC567
exclude_as_extra_fabric_validation_target: true
validation_profile: profile1
l3_interfaces:
- name: Ethernet11
ip_address: 10.20.30.40/24
description: Test interface
peer: Someotherdevice
peer_ip: 10.20.30.50/24

validation_profiles:
- name: profile1
exclude_as_extra_fabric_validation_target: true
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ spine:
bgp_as: 65000
inband_mgmt_vrf: inband_mgmt_vrf
inband_mgmt_interface: Vlan123
validation_profile: profile1

logging_settings:
console: errors
Expand Down Expand Up @@ -85,4 +86,8 @@ logging_settings:
match_lists:
- name: molecule
action: discard
validate_no_errors_period: 2

validation_profiles:
- name: profile1
logging:
validate_no_errors_period: 2
Loading