Skip to content

Commit a8e2733

Browse files
samaitysanthosh-kt
authored andcommitted
Add support to VS platform for platform.json and DPB CLI Tests (sonic-net#5192)
- Reverts commit 457674c - Creates "platform.json" for vs docker - Adds test case for port breakout CLI - Explicitly sets admin status of all the VS interfaces to down to be compatible with SWSS test cases, specifically vnet tests and sflow tests Signed-off-by: Sangita Maity <sangitamaity0211@gmail.com>
1 parent 926c9ff commit a8e2733

File tree

6 files changed

+726
-3
lines changed

6 files changed

+726
-3
lines changed

platform/vs/docker-sonic-vs/Dockerfile.j2

+6-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ RUN apt-get install -y net-tools \
4646
python-scapy \
4747
conntrack \
4848
iptables \
49-
python3-pip
49+
python3-pip \
50+
jq
5051

5152
RUN pip install setuptools
5253
RUN pip3 install setuptools
@@ -132,6 +133,10 @@ COPY ["hostname.j2", "/usr/share/sonic/templates/"]
132133
COPY ["default_chassis_cfg.json", "/etc/default/sonic-db/"]
133134
COPY ["chassis_db.py", "/usr/bin/"]
134135

136+
COPY ["platform.json", "/usr/share/sonic/device/x86_64-kvm_x86_64-r0/"]
137+
COPY ["hwsku.json", "/usr/share/sonic/device/x86_64-kvm_x86_64-r0/Force10-S6000/"]
138+
COPY ["platform.json", "/usr/share/sonic/platform/"]
139+
135140
# Workaround the tcpdump issue
136141
RUN mv /usr/sbin/tcpdump /usr/bin/tcpdump
137142

+100
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
{
2+
"interfaces": {
3+
"Ethernet0": {
4+
"default_brkout_mode": "1x100G[40G]"
5+
},
6+
"Ethernet4": {
7+
"default_brkout_mode": "1x100G[40G]"
8+
},
9+
"Ethernet8": {
10+
"default_brkout_mode": "1x100G[40G]"
11+
},
12+
"Ethernet12": {
13+
"default_brkout_mode": "1x100G[40G]"
14+
},
15+
"Ethernet16": {
16+
"default_brkout_mode": "1x100G[40G]"
17+
},
18+
"Ethernet20": {
19+
"default_brkout_mode": "1x100G[40G]"
20+
},
21+
"Ethernet24": {
22+
"default_brkout_mode": "1x100G[40G]"
23+
},
24+
"Ethernet28": {
25+
"default_brkout_mode": "1x100G[40G]"
26+
},
27+
"Ethernet32": {
28+
"default_brkout_mode": "1x100G[40G]"
29+
},
30+
"Ethernet36": {
31+
"default_brkout_mode": "1x100G[40G]"
32+
},
33+
"Ethernet40": {
34+
"default_brkout_mode": "1x100G[40G]"
35+
},
36+
"Ethernet44": {
37+
"default_brkout_mode": "1x100G[40G]"
38+
},
39+
"Ethernet48": {
40+
"default_brkout_mode": "1x100G[40G]"
41+
},
42+
"Ethernet52": {
43+
"default_brkout_mode": "1x100G[40G]"
44+
},
45+
"Ethernet56": {
46+
"default_brkout_mode": "1x100G[40G]"
47+
},
48+
"Ethernet60": {
49+
"default_brkout_mode": "1x100G[40G]"
50+
},
51+
"Ethernet64": {
52+
"default_brkout_mode": "1x100G[40G]"
53+
},
54+
"Ethernet68": {
55+
"default_brkout_mode": "1x100G[40G]"
56+
},
57+
"Ethernet72": {
58+
"default_brkout_mode": "1x100G[40G]"
59+
},
60+
"Ethernet76": {
61+
"default_brkout_mode": "1x100G[40G]"
62+
},
63+
"Ethernet80": {
64+
"default_brkout_mode": "1x100G[40G]"
65+
},
66+
"Ethernet84": {
67+
"default_brkout_mode": "1x100G[40G]"
68+
},
69+
"Ethernet88": {
70+
"default_brkout_mode": "1x100G[40G]"
71+
},
72+
"Ethernet92": {
73+
"default_brkout_mode": "1x100G[40G]"
74+
},
75+
"Ethernet96": {
76+
"default_brkout_mode": "1x100G[40G]"
77+
},
78+
"Ethernet100": {
79+
"default_brkout_mode": "1x100G[40G]"
80+
},
81+
"Ethernet104": {
82+
"default_brkout_mode": "1x100G[40G]"
83+
},
84+
"Ethernet108": {
85+
"default_brkout_mode": "1x100G[40G]"
86+
},
87+
"Ethernet112": {
88+
"default_brkout_mode": "1x100G[40G]"
89+
},
90+
"Ethernet116": {
91+
"default_brkout_mode": "1x100G[40G]"
92+
},
93+
"Ethernet120": {
94+
"default_brkout_mode": "1x100G[40G]"
95+
},
96+
"Ethernet124": {
97+
"default_brkout_mode": "1x100G[40G]"
98+
}
99+
}
100+
}
+196
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
{
2+
"interfaces": {
3+
"Ethernet0": {
4+
"index": "0,0,0,0",
5+
"lanes": "25,26,27,28",
6+
"alias_at_lanes": "fortyGigE0/0,fortyGigE0/1,fortyGigE0/2,fortyGigE0/3",
7+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
8+
},
9+
"Ethernet4": {
10+
"index": "1,1,1,1",
11+
"lanes": "29,30,31,32",
12+
"alias_at_lanes": "fortyGigE0/4,fortyGigE0/5,fortyGigE0/6,fortyGigE0/7",
13+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G]"
14+
},
15+
"Ethernet8": {
16+
"index": "2,2,2,2",
17+
"lanes": "33,34,35,36",
18+
"alias_at_lanes": "fortyGigE0/8,fortyGigE0/9,fortyGigE0/10,fortyGigE0/11",
19+
"breakout_modes": "1x100G[40G],2x50G,2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
20+
},
21+
"Ethernet12": {
22+
"index": "3,3,3,3",
23+
"lanes": "37,38,39,40",
24+
"alias_at_lanes": "fortyGigE0/12,fortyGigE0/13,fortyGigE0/14,fortyGigE0/15",
25+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
26+
},
27+
"Ethernet16": {
28+
"index": "4,4,4,4",
29+
"lanes": "45,46,47,48",
30+
"alias_at_lanes": "fortyGigE0/16,fortyGigE0/17,fortyGigE0/18,fortyGigE0/19",
31+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
32+
},
33+
"Ethernet20": {
34+
"index": "5,5,5,5",
35+
"lanes": "41,42,43,44",
36+
"alias_at_lanes": "fortyGigE0/20,fortyGigE0/21,fortyGigE0/22,fortyGigE0/23",
37+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
38+
},
39+
"Ethernet24": {
40+
"index": "6,6,6,6",
41+
"lanes": "1,2,3,4",
42+
"alias_at_lanes": "fortyGigE0/24,fortyGigE0/25,fortyGigE0/26,fortyGigE0/27",
43+
"breakout_modes": "1x100G[40G],4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
44+
},
45+
"Ethernet28": {
46+
"index": "7,7,7,7",
47+
"lanes": "5,6,7,8",
48+
"alias_at_lanes": "fortyGigE0/28,fortyGigE0/29,fortyGigE0/30,fortyGigE0/31",
49+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
50+
},
51+
"Ethernet32": {
52+
"index": "8,8,8,8",
53+
"lanes": "13,14,15,16",
54+
"alias_at_lanes": "fortyGigE0/32,fortyGigE0/33,fortyGigE0/34,fortyGigE0/35",
55+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
56+
},
57+
"Ethernet36": {
58+
"index": "9,9,9,9",
59+
"lanes": "9,10,11,12",
60+
"alias_at_lanes": "fortyGigE0/36,fortyGigE0/37,fortyGigE0/38,fortyGigE0/39",
61+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
62+
},
63+
"Ethernet40": {
64+
"index": "10,10,10,10",
65+
"lanes": "17,18,19,20",
66+
"alias_at_lanes": "fortyGigE0/40,fortyGigE0/41,fortyGigE0/42,fortyGigE0/43",
67+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
68+
},
69+
"Ethernet44": {
70+
"index": "11,11,11,11",
71+
"lanes": "21,22,23,24",
72+
"alias_at_lanes": "fortyGigE0/44,fortyGigE0/45,fortyGigE0/46,fortyGigE0/47",
73+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
74+
},
75+
"Ethernet48": {
76+
"index": "12,12,12,12",
77+
"lanes": "53,54,55,56",
78+
"alias_at_lanes": "fortyGigE0/48,fortyGigE0/49,fortyGigE0/50,fortyGigE0/51",
79+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
80+
},
81+
"Ethernet52": {
82+
"index": "13,13,13,13",
83+
"lanes": "49,50,51,52",
84+
"alias_at_lanes": "fortyGigE0/52,fortyGigE0/53,fortyGigE0/54,fortyGigE0/55",
85+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
86+
},
87+
"Ethernet56": {
88+
"index": "14,14,14,14",
89+
"lanes": "57,58,59,60",
90+
"alias_at_lanes": "fortyGigE0/56,fortyGigE0/57,fortyGigE0/58,fortyGigE0/59",
91+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
92+
},
93+
"Ethernet60": {
94+
"index": "15,15,15,15",
95+
"lanes": "61,62,63,64",
96+
"alias_at_lanes": "fortyGigE0/60,fortyGigE0/61,fortyGigE0/62,fortyGigE0/63",
97+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
98+
},
99+
"Ethernet64": {
100+
"index": "16,16,16,16",
101+
"lanes": "69,70,71,72",
102+
"alias_at_lanes": "fortyGigE0/64,fortyGigE0/65,fortyGigE0/66,fortyGigE0/67",
103+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
104+
},
105+
"Ethernet68": {
106+
"index": "17,17,17,17",
107+
"lanes": "65,66,67,68",
108+
"alias_at_lanes": "fortyGigE0/68,fortyGigE0/69,fortyGigE0/70,fortyGigE0/71",
109+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
110+
},
111+
"Ethernet72": {
112+
"index": "18,18,18,18",
113+
"lanes": "73,74,75,76",
114+
"alias_at_lanes": "fortyGigE0/72,fortyGigE0/73,fortyGigE0/74,fortyGigE0/75",
115+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
116+
},
117+
"Ethernet76": {
118+
"index": "19,19,19,19",
119+
"lanes": "77,78,79,80",
120+
"alias_at_lanes": "fortyGigE0/76,fortyGigE0/77,fortyGigE0/78,fortyGigE0/79",
121+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
122+
},
123+
"Ethernet80": {
124+
"index": "20,20,20,20",
125+
"lanes": "109,110,111,112",
126+
"alias_at_lanes": "fortyGigE0/80,fortyGigE0/81,fortyGigE0/82,fortyGigE0/83",
127+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
128+
},
129+
"Ethernet84": {
130+
"index": "21,21,21,21",
131+
"lanes": "105,106,107,108",
132+
"alias_at_lanes": "fortyGigE0/84,fortyGigE0/85,fortyGigE0/86,fortyGigE0/87",
133+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
134+
},
135+
"Ethernet88": {
136+
"index": "22,22,22,22",
137+
"lanes": "113,114,115,116",
138+
"alias_at_lanes": "fortyGigE0/88,fortyGigE0/89,fortyGigE0/90,fortyGigE0/91",
139+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
140+
},
141+
"Ethernet92": {
142+
"index": "23,23,23,23",
143+
"lanes": "117,118,119,120",
144+
"alias_at_lanes": "fortyGigE0/92,fortyGigE0/93,fortyGigE0/94,fortyGigE0/95",
145+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
146+
},
147+
"Ethernet96": {
148+
"index": "24,24,24,24",
149+
"lanes": "125,126,127,128",
150+
"alias_at_lanes": "fortyGigE0/96,fortyGigE0/97,fortyGigE0/98,fortyGigE0/99",
151+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
152+
},
153+
"Ethernet100": {
154+
"index": "25,25,25,25",
155+
"lanes": "121,122,123,124",
156+
"alias_at_lanes": "fortyGigE0/100,fortyGigE0/101,fortyGigE0/102,fortyGigE0/103",
157+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
158+
},
159+
"Ethernet104": {
160+
"index": "26,26,26,26",
161+
"lanes": "81,82,83,84",
162+
"alias_at_lanes": "fortyGigE0/104,fortyGigE0/105,fortyGigE0/106,fortyGigE0/107",
163+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
164+
},
165+
"Ethernet108": {
166+
"index": "27,27,27,27",
167+
"lanes": "85,86,87,88",
168+
"alias_at_lanes": "fortyGigE0/108,fortyGigE0/109,fortyGigE0/110,fortyGigE0/111",
169+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
170+
},
171+
"Ethernet112": {
172+
"index": "28,28,28,28",
173+
"lanes": "93,94,95,96",
174+
"alias_at_lanes": "fortyGigE0/112,fortyGigE0/113,fortyGigE0/114,fortyGigE0/115",
175+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
176+
},
177+
"Ethernet116": {
178+
"index": "29,29,29,29",
179+
"lanes": "89,90,91,92",
180+
"alias_at_lanes": "fortyGigE0/116,fortyGigE0/117,fortyGigE0/118,fortyGigE0/119",
181+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
182+
},
183+
"Ethernet120": {
184+
"index": "30,30,30,30",
185+
"lanes": "101,102,103,104",
186+
"alias_at_lanes": "fortyGigE0/120,fortyGigE0/121,fortyGigE0/122,fortyGigE0/123",
187+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
188+
},
189+
"Ethernet124": {
190+
"index": "31,31,31,31",
191+
"lanes": "97,98,99,100",
192+
"alias_at_lanes": "fortyGigE0/124,fortyGigE0/125,fortyGigE0/126,fortyGigE0/127",
193+
"breakout_modes": "1x100G[40G],2x50G,4x25G[10G],2x25G(2)+1x50G(2),1x50G(2)+2x25G(2)"
194+
}
195+
}
196+
}

platform/vs/docker-sonic-vs/start.sh

+4-2
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,11 @@ if [ -f /etc/sonic/config_db.json ]; then
3838
mv /tmp/config_db.json /etc/sonic/config_db.json
3939
else
4040
# generate and merge buffers configuration into config file
41-
sonic-cfggen -k $HWSKU -p /usr/share/sonic/hwsku/port_config.ini -t /usr/share/sonic/hwsku/buffers.json.j2 > /tmp/buffers.json
41+
sonic-cfggen -k $HWSKU -p /usr/share/sonic/device/$PLATFORM/platform.json -t /usr/share/sonic/hwsku/buffers.json.j2 > /tmp/buffers.json
4242
sonic-cfggen -j /etc/sonic/init_cfg.json -t /usr/share/sonic/hwsku/qos.json.j2 > /tmp/qos.json
43-
sonic-cfggen -p /usr/share/sonic/hwsku/port_config.ini -k $HWSKU --print-data > /tmp/ports.json
43+
sonic-cfggen -p /usr/share/sonic/device/$PLATFORM/platform.json -k $HWSKU --print-data > /tmp/ports.json
44+
# change admin_status from up to down; Test cases dependent
45+
sed -i "s/up/down/g" /tmp/ports.json
4446
sonic-cfggen -j /etc/sonic/init_cfg.json -j /tmp/buffers.json -j /tmp/qos.json -j /tmp/ports.json --print-data > /etc/sonic/config_db.json
4547
fi
4648

0 commit comments

Comments
 (0)