Skip to content

Commit 9ac7ad4

Browse files
authored
Add t0-118 topo test configs (sonic-net#16659)
What is the motivation for this PR? Add t0-118 test configs to sonic-mgmt How did you do it? How did you verify/test it? Any platform specific information? Supported testbed topology if it's a new test case? Arista-7260CX3-D108C10
1 parent 5112636 commit 9ac7ad4

21 files changed

+118
-112
lines changed

ansible/group_vars/sonic/variables

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ broadcom_hwskus: [ 'ACS-S6000', 'ACS-S6000-Q24S32', 'ACS-N3132', 'Force10-S6000'
1212
broadcom_td2_hwskus: ['Force10-S6000', 'Force10-S6000-Q24S32', 'Arista-7050-QX32', 'Arista-7050-QX-32S', 'Nexus-3164', 'Arista-7050QX32S-Q32']
1313
broadcom_td3_hwskus: ['Arista-7050CX3-32S-C32', 'Arista-7050CX3-32S-D48C8']
1414
broadcom_th_hwskus: ['Force10-S6100', 'Arista-7060CX-32S-C32', 'Arista-7060CX-32S-C32-T1', 'Arista-7060CX-32S-D48C8', 'Celestica-DX010-C32', "Seastone-DX010" ]
15-
broadcom_th2_hwskus: ['Arista-7260CX3-D108C8', 'Arista-7260CX3-C64', 'Arista-7260CX3-Q64']
15+
broadcom_th2_hwskus: ['Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10', 'Arista-7260CX3-C64', 'Arista-7260CX3-Q64']
1616
broadcom_th3_hwskus: ['DellEMC-Z9332f-M-O16C64', 'DellEMC-Z9332f-O32']
1717
broadcom_th4_hwskus: ['Arista-7060DX5-32', 'Arista-7060DX5-64S']
1818
broadcom_th5_hwskus: ['Arista-7060X6-64DE', 'Arista-7060X6-64DE-64x400G', 'Arista-7060X6-64DE-O128S2', 'Arista-7060X6-64DE-256x200G', 'Arista-7060X6-64PE', 'Arista-7060X6-64PE-64x400G', 'Arista-7060X6-64PE-O128S2', 'Arista-7060X6-64PE-256x200G', 'Arista-7060X6-64PE-C256S2', 'Arista-7060X6-64PE-C224O8']

ansible/module_utils/port_utils.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -245,8 +245,7 @@ def get_port_alias_to_name_map(hwsku, asic_name=None):
245245
if hwsku == "Arista-7260CX3-D108C10":
246246
# The first 2 ports are 100G
247247
s100G_ports.extend([x for x in range(1, 3)])
248-
249-
if hwsku == "Arista-7260CX3-D108C8-AILAB":
248+
elif hwsku == "Arista-7260CX3-D108C8-AILAB":
250249
s100G_ports = [x for x in range(45, 53)]
251250
elif hwsku == "Arista-7260CX3-D108C8-CSI":
252251
# Treat 40G port as 100G ports

ansible/roles/test/tasks/dir_bcast.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
when: testbed_type is not defined
88

99
- fail: msg="testbed_type {{testbed_type}} is invalid."
10-
when: testbed_type not in ['t0', 't0-16', 't0-56', 't0-64', 't0-64-32', 't0-116']
10+
when: testbed_type not in ['t0', 't0-16', 't0-56', 't0-64', 't0-64-32', 't0-116', 't0-118']
1111

1212
- include_vars: "vars/topo_{{testbed_type}}.yml"
1313

ansible/roles/test/tasks/fdb.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
when: testbed_type is not defined
33

44
- fail: msg="testbed_type {{test_type}} is invalid"
5-
when: testbed_type not in ['t0', 't0-64', 't0-116', 't0-52']
5+
when: testbed_type not in ['t0', 't0-64', 't0-116', 't0-118', 't0-52']
66

77
- name: Gather minigraph facts about the device
88
minigraph_facts: host={{inventory_hostname}}

ansible/roles/test/tasks/fdb_mac_expire.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
when: testbed_type is not defined
33

44
- fail: msg="testbed_type {{test_type}} is invalid"
5-
when: testbed_type not in ['t0', 't0-64', 't0-64-32', 't0-116', 't0-52']
5+
when: testbed_type not in ['t0', 't0-64', 't0-64-32', 't0-116', 't0-118', 't0-52']
66

77
- name: set fdb_aging_time to default if no user input
88
set_fact:

ansible/roles/test/tasks/pfc_wd/choose_test_port.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -23,27 +23,27 @@
2323

2424
- set_fact:
2525
random_seed: "{{range(4) | list | shuffle}}"
26-
when: testbed_type in ["t0", "t0-64", "t0-116"]
26+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]
2727

2828
- set_fact:
2929
pfc_wd_test_portchannel: "{{minigraph_portchannel_interfaces[0].attachto}}"
30-
when: testbed_type in ["t0", "t0-64", "t0-116"]
30+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]
3131

3232
- set_fact:
3333
pfc_wd_rx_portchannel: "{%for p in minigraph_portchannel_interfaces if p['attachto']!=pfc_wd_test_portchannel %}{%if loop.first %}{{p['attachto']}}{%endif%}{%endfor%}"
34-
when: testbed_type in ["t0", "t0-64", "t0-116"]
34+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]
3535

3636
- set_fact:
3737
pfc_wd_test_port: "{{minigraph_portchannels[pfc_wd_test_portchannel]['members'][0]}}"
3838
pfc_wd_rx_port: "{{minigraph_portchannels[pfc_wd_rx_portchannel]['members'][0]}}"
39-
when: testbed_type in ["t0", "t0-64", "t0-116"]
39+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]
4040

4141
- set_fact:
4242
pfc_wd_test_port_addr: "{%for p in minigraph_portchannel_interfaces%}{%if p['attachto']==pfc_wd_test_portchannel and p['addr']|ipv4%}{{p['addr']}}{%endif %}{%endfor%}"
4343
pfc_wd_rx_port_addr: "{%for p in minigraph_portchannel_interfaces%}{%if p['attachto']==pfc_wd_rx_portchannel and p['addr']|ipv4%}{{p['addr']}}{%endif %}{%endfor%}"
44-
when: testbed_type in ["t0", "t0-64", "t0-116"]
44+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]
4545

4646
- set_fact:
4747
pfc_wd_test_port_id: "{{minigraph_port_indices[pfc_wd_test_port]}}"
4848
pfc_wd_rx_port_id: "{{minigraph_port_indices[pfc_wd_rx_port]}}"
49-
when: testbed_type in ["t0", "t0-64", "t0-116"]
49+
when: testbed_type in ["t0", "t0-64", "t0-116", "t0-118"]

ansible/roles/test/tasks/pfc_wd/iterate_portchannels.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@
4646

4747
- set_fact:
4848
p: "{{pfc_wd_test_port[1]}}"
49-
when: rx_pc_port is defined and test_pc_port is defined and testbed_type in ['t0-64', 't0-116', 't1-lag']
49+
when: rx_pc_port is defined and test_pc_port is defined and testbed_type in ['t0-64', 't0-116', 't0-118', 't1-lag']
5050

5151
- set_fact:
5252
test_ports: "{{ test_ports | combine( {p:{'test_neighbor_addr':pfc_wd_test_neighbor_addr, 'rx_port':pfc_wd_rx_port, 'rx_neighbor_addr': pfc_wd_rx_neighbor_addr, 'peer_device':neighbors[p]['peerdevice'], 'test_port_id': minigraph_port_indices[p], 'rx_port_id': pfc_wd_rx_port_id.split(' ') | list, 'test_portchannel_members': pfc_wd_test_port_id.split(' ') | list, 'test_port_type':'portchannel' }}) }}"
53-
when: rx_pc_port is defined and test_pc_port is defined and testbed_type in ['t0-64', 't0-116', 't1-lag']
53+
when: rx_pc_port is defined and test_pc_port is defined and testbed_type in ['t0-64', 't0-116', 't0-118', 't1-lag']
5454

5555
- set_fact:
5656
p: "{{pfc_wd_rx_port[0]}}"
@@ -62,11 +62,11 @@
6262

6363
- set_fact:
6464
p: "{{pfc_wd_rx_port[1]}}"
65-
when: first_pair and testbed_type in ['t0-64', 't0-116']
65+
when: first_pair and testbed_type in ['t0-64', 't0-116', 't0-118']
6666

6767
- set_fact:
6868
test_ports: "{{ test_ports | combine( {p:{'test_neighbor_addr':pfc_wd_rx_neighbor_addr, 'rx_port':pfc_wd_test_port, 'rx_neighbor_addr': pfc_wd_test_neighbor_addr, 'peer_device':neighbors[p]['peerdevice'], 'test_port_id': minigraph_port_indices[p], 'rx_port_id': pfc_wd_test_port_id.split(' ') | list , 'test_portchannel_members': pfc_wd_rx_port_id.split(' ') | list, 'test_port_type':'portchannel' }}) }}"
69-
when: first_pair and testbed_type in ['t0-64', 't0-116']
69+
when: first_pair and testbed_type in ['t0-64', 't0-116', 't0-118']
7070

7171
- set_fact:
7272
used: false

ansible/roles/test/tasks/qos_sai.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@
117117
- name: Init PTF base test parameters
118118
set_fact:
119119
ptf_base_params:
120-
- router_mac={% if testbed_type not in ['t0', 't0-64', 't0-116'] %}'{{ansible_Ethernet0['macaddress']}}'{% else %}''{% endif %}
120+
- router_mac={% if testbed_type not in ['t0', 't0-64', 't0-116', 't0-118'] %}'{{ansible_Ethernet0['macaddress']}}'{% else %}''{% endif %}
121121
- server='{{ansible_host}}'
122122
- port_map_file='/root/{{ptf_portmap | basename}}'
123123
- sonic_asic_type='{{sonic_asic_type}}'
@@ -151,7 +151,7 @@
151151
- dst_port_3_ip='{{dst_port_3_ip}}'
152152
- src_port_id='{{src_port_id}}'
153153
- src_port_ip='{{src_port_ip}}'
154-
when: testbed_type in ['t0', 't0-64', 't0-116'] or arp_entries.stdout.find('incomplete') == -1
154+
when: testbed_type in ['t0', 't0-64', 't0-116', 't0-118'] or arp_entries.stdout.find('incomplete') == -1
155155

156156
- include_tasks: qos_sai_ptf.yml
157157
vars:
@@ -268,7 +268,7 @@
268268
- pkts_num_hdrm_full={{qp_sc.hdrm_pool_size.pkts_num_hdrm_full}}
269269
- pkts_num_hdrm_partial={{qp_sc.hdrm_pool_size.pkts_num_hdrm_partial}}
270270
when: minigraph_hwsku is defined and
271-
minigraph_hwsku in ['Arista-7060CX-32S-C32', 'Celestica-DX010-C32', 'Arista-7260CX3-D108C8', 'Force10-S6100', 'Arista-7260CX3-Q64']
271+
minigraph_hwsku in ['Arista-7060CX-32S-C32', 'Celestica-DX010-C32', 'Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10', 'Force10-S6100', 'Arista-7260CX3-Q64']
272272

273273
# Lossy queue
274274
- include_tasks: qos_sai_ptf.yml
@@ -348,11 +348,11 @@
348348
- packet_size='{{qp.wm_pg_shared_lossless.packet_size}}'
349349
- cell_size='{{qp.wm_pg_shared_lossless.cell_size}}'
350350
when: minigraph_hwsku is defined and
351-
(minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8'])
351+
(minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10'])
352352
- debug:
353353
var: out.stdout_lines
354354
when: minigraph_hwsku is defined and
355-
(minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8'])
355+
(minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10'])
356356

357357
# Clear all watermarks before each watermark test
358358
# because of the clear on read polling mode
@@ -378,11 +378,11 @@
378378
- packet_size='{{qp.wm_pg_shared_lossy.packet_size}}'
379379
- cell_size='{{qp.wm_pg_shared_lossy.cell_size}}'
380380
when: minigraph_hwsku is defined and
381-
minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8']
381+
minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10']
382382
- debug:
383383
var: out.stdout_lines
384384
when: minigraph_hwsku is defined and
385-
minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8']
385+
minigraph_hwsku not in ['Arista-7260CX3-Q64', 'Arista-7260CX3-D108C8', 'Arista-7260CX3-D108C10']
386386

387387
# Clear all watermarks before each watermark test
388388
# because of the clear on read polling mode

ansible/roles/test/tasks/shared-fib.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
- name: Expand properties into props
2020
set_fact: props="{{configuration_properties['common']}}"
21-
when: testbed_type in ['t0', 't0-52', 't0-56', 't0-64', 't0-64-32', 't0-116']
21+
when: testbed_type in ['t0', 't0-52', 't0-56', 't0-64', 't0-64-32', 't0-116', 't0-118']
2222

2323
- name: Expand ToR properties into props
2424
set_fact: props_tor="{{configuration_properties['tor']}}"

ansible/roles/test/tasks/warm-reboot-multi-sad.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
- name: Add all lag member down case
1313
set_fact:
1414
pre_list: "{{ pre_list + ['dut_lag_member_down:2:{{ lag_memb_cnt }}', 'neigh_lag_member_down:3:{{ lag_memb_cnt }}']}}"
15-
when: testbed_type in ['t0-64', 't0-116', 't0-64-32']
15+
when: testbed_type in ['t0-64', 't0-116', 't0-118', 't0-64-32']
1616

1717
- name: set default values vnet variables
1818
set_fact:

ansible/roles/test/tasks/warm-reboot-sad-lag-member.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
- name: Add all lag member down case
1313
set_fact:
1414
pre_list: "{{ pre_list + ['dut_lag_member_down:2:{{ lag_memb_cnt }}', 'neigh_lag_member_down:3:{{ lag_memb_cnt }}']}}"
15-
when: testbed_type in ['t0-64', 't0-116', 't0-64-32']
15+
when: testbed_type in ['t0-64', 't0-116', 't0-118', 't0-64-32']
1616

1717
- name: set default values vnet variables
1818
set_fact:

ansible/roles/test/templates/fib.j2

+4-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919
{% elif testbed_type == 't0-116' %}
2020
0.0.0.0/0 [24 25] [26 27] [28 29] [30 31]
2121
::/0 [24 25] [26 27] [28 29] [30 31]
22+
{% elif testbed_type == 't0-118' %}
23+
0.0.0.0/0 [0, 1] [22 23] [24 25] [26 27] [28 29]
24+
::/0 [0, 1] [22 23] [24 25] [26 27] [28 29]
2225
{% endif %}
2326
{#routes to uplink#}
2427
{#Limit the number of podsets and subnets to be covered to limit script execution time#}
@@ -61,7 +64,7 @@
6164
[{% for member in v.members %}{{ '%d' % minigraph_port_indices[member]}}{% if not loop.last %} {% endif %}{% endfor %}]{% if not loop.last %} {% endif %}{% endfor %}
6265

6366
{% endif %}
64-
{% elif testbed_type == 't0-116' %}
67+
{% elif (testbed_type == 't0-116') or (testbed_type == 't0-118') %}
6568
{% set suffix = ( (podset * props.tor_number * props.max_tor_subnet_number * props.tor_subnet_size) +
6669
(tor * props.max_tor_subnet_number * props.tor_subnet_size) +
6770
(subnet * props.tor_subnet_size) ) %}

0 commit comments

Comments
 (0)