]>
Commit | Line | Data |
---|---|---|
f4e38e30 JP |
1 | AT_BANNER([ovn-nbctl]) |
2 | ||
3 | # OVN_NBCTL_TEST_START | |
4 | m4_define([OVN_NBCTL_TEST_START], | |
6132b241 | 5 | [dnl Create ovn-nb database. |
dfef14ee | 6 | AT_KEYWORDS([ovn]) |
f4e38e30 JP |
7 | AT_CHECK([ovsdb-tool create ovn-nb.db $abs_top_srcdir/ovn/ovn-nb.ovsschema]) |
8 | ||
9 | dnl Start ovsdb-server. | |
60bdd011 | 10 | AT_CHECK([ovsdb-server --detach --no-chdir --pidfile --log-file --remote=punix:$OVS_RUNDIR/ovnnb_db.sock ovn-nb.db], [0], [], [stderr]) |
53eb8cb8 | 11 | on_exit "kill `cat ovsdb-server.pid`" |
fa183acc | 12 | AT_CHECK([ovn-nbctl init]) |
f4e38e30 JP |
13 | AT_CHECK([[sed < stderr ' |
14 | /vlog|INFO|opened log file/d | |
15 | /ovsdb_server|INFO|ovsdb-server (Open vSwitch)/d']]) | |
16 | AT_CAPTURE_FILE([ovsdb-server.log]) | |
17 | ]) | |
18 | ||
19 | # OVN_NBCTL_TEST_STOP | |
20 | m4_define([OVN_NBCTL_TEST_STOP], | |
f0e65e67 | 21 | [AT_CHECK([check_logs "$1"]) |
d9c8c57c | 22 | OVS_APP_EXIT_AND_WAIT([ovsdb-server])]) |
f4e38e30 JP |
23 | |
24 | ||
ea46a4e9 | 25 | AT_SETUP([ovn-nbctl - basic switch commands]) |
f4e38e30 JP |
26 | OVN_NBCTL_TEST_START |
27 | ||
ea46a4e9 | 28 | AT_CHECK([ovn-nbctl ls-add ls0]) |
c724bd67 | 29 | AT_CHECK([ovn-nbctl ls-list | uuidfilt], [0], [dnl |
f4e38e30 JP |
30 | <0> (ls0) |
31 | ]) | |
32 | ||
ea46a4e9 | 33 | AT_CHECK([ovn-nbctl ls-add ls1]) |
c724bd67 | 34 | AT_CHECK([ovn-nbctl ls-list | uuidfilt], [0], [dnl |
f4e38e30 JP |
35 | <0> (ls0) |
36 | <1> (ls1) | |
37 | ]) | |
38 | ||
ea46a4e9 | 39 | AT_CHECK([ovn-nbctl ls-del ls0]) |
c724bd67 | 40 | AT_CHECK([ovn-nbctl ls-list | uuidfilt], [0], [dnl |
f4e38e30 JP |
41 | <0> (ls1) |
42 | ]) | |
43 | ||
d24d3372 | 44 | AT_CHECK([ovn-nbctl show ls0]) |
ea46a4e9 | 45 | AT_CHECK([ovn-nbctl ls-add ls0]) |
c724bd67 | 46 | AT_CHECK([ovn-nbctl show ls0 | uuidfilt], [0], |
7a16f569 | 47 | [switch <0> (ls0) |
d24d3372 | 48 | ]) |
ea46a4e9 JP |
49 | AT_CHECK([ovn-nbctl ls-add ls0], [1], [], |
50 | [ovn-nbctl: ls0: a switch with this name already exists | |
4ff6642f | 51 | ]) |
ea46a4e9 | 52 | AT_CHECK([ovn-nbctl --may-exist ls-add ls0]) |
c724bd67 | 53 | AT_CHECK([ovn-nbctl show ls0 | uuidfilt], [0], |
7a16f569 | 54 | [switch <0> (ls0) |
4ff6642f | 55 | ]) |
ea46a4e9 JP |
56 | AT_CHECK([ovn-nbctl --add-duplicate ls-add ls0]) |
57 | AT_CHECK([ovn-nbctl --may-exist --add-duplicate ls-add ls0], [1], [], | |
4ff6642f BP |
58 | [ovn-nbctl: --may-exist and --add-duplicate may not be used together |
59 | ]) | |
ea46a4e9 | 60 | AT_CHECK([ovn-nbctl ls-del ls0], [1], [], |
d24d3372 BP |
61 | [ovn-nbctl: Multiple logical switches named 'ls0'. Use a UUID. |
62 | ]) | |
63 | ||
ea46a4e9 JP |
64 | AT_CHECK([ovn-nbctl ls-del ls2], [1], [], |
65 | [ovn-nbctl: ls2: switch name not found | |
d24d3372 | 66 | ]) |
ea46a4e9 | 67 | AT_CHECK([ovn-nbctl --if-exists ls-del ls2]) |
d24d3372 | 68 | |
ea46a4e9 JP |
69 | AT_CHECK([ovn-nbctl ls-add]) |
70 | AT_CHECK([ovn-nbctl ls-add]) | |
71 | AT_CHECK([ovn-nbctl --add-duplicate ls-add], [1], [], | |
4ff6642f BP |
72 | [ovn-nbctl: --add-duplicate requires specifying a name |
73 | ]) | |
ea46a4e9 | 74 | AT_CHECK([ovn-nbctl --may-exist ls-add], [1], [], |
4ff6642f BP |
75 | [ovn-nbctl: --may-exist requires specifying a name |
76 | ]) | |
77 | ||
f4e38e30 JP |
78 | OVN_NBCTL_TEST_STOP |
79 | AT_CLEANUP | |
80 | ||
81 | dnl --------------------------------------------------------------------- | |
82 | ||
31ed1192 | 83 | AT_SETUP([ovn-nbctl - basic logical switch port commands]) |
f4e38e30 JP |
84 | OVN_NBCTL_TEST_START |
85 | ||
ea46a4e9 | 86 | AT_CHECK([ovn-nbctl ls-add ls0]) |
31ed1192 JP |
87 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0]) |
88 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0], [1], [], | |
89 | [ovn-nbctl: lp0: a port with this name already exists | |
d24d3372 | 90 | ]) |
31ed1192 | 91 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls0 lp0]) |
c724bd67 | 92 | AT_CHECK([ovn-nbctl lsp-list ls0 | uuidfilt], [0], [dnl |
f4e38e30 JP |
93 | <0> (lp0) |
94 | ]) | |
95 | ||
31ed1192 | 96 | AT_CHECK([ovn-nbctl lsp-add ls0 lp1]) |
c724bd67 | 97 | AT_CHECK([ovn-nbctl lsp-list ls0 | uuidfilt], [0], [dnl |
f4e38e30 JP |
98 | <0> (lp0) |
99 | <1> (lp1) | |
100 | ]) | |
101 | ||
ea46a4e9 | 102 | AT_CHECK([ovn-nbctl ls-add ls1]) |
31ed1192 JP |
103 | AT_CHECK([ovn-nbctl lsp-add ls0 lp1], [1], [], |
104 | [ovn-nbctl: lp1: a port with this name already exists | |
d24d3372 | 105 | ]) |
31ed1192 | 106 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls1 lp1], [1], [], |
ea46a4e9 | 107 | [ovn-nbctl: lp1: port already exists but in switch ls0 |
d24d3372 | 108 | ]) |
31ed1192 JP |
109 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls0 lp1 lp0 5], [1], [], |
110 | [ovn-nbctl: lp1: port already exists but has no parent | |
d24d3372 BP |
111 | ]) |
112 | ||
31ed1192 | 113 | AT_CHECK([ovn-nbctl lsp-del lp1]) |
c724bd67 | 114 | AT_CHECK([ovn-nbctl lsp-list ls0 | uuidfilt], [0], [dnl |
f4e38e30 JP |
115 | <0> (lp0) |
116 | ]) | |
117 | ||
31ed1192 JP |
118 | AT_CHECK([ovn-nbctl lsp-add ls0 lp2 lp3 5]) |
119 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls0 lp2 lp4 5], [1], [], | |
120 | [ovn-nbctl: lp2: port already exists with different parent lp3 | |
d24d3372 | 121 | ]) |
31ed1192 | 122 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls0 lp2 lp3 10], [1], [], |
b511690b | 123 | [ovn-nbctl: lp2: port already exists with different tag_request 5 |
d24d3372 | 124 | ]) |
b511690b | 125 | AT_CHECK([ovn-nbctl clear Logical_Switch_Port lp2 tag_request]) |
31ed1192 | 126 | AT_CHECK([ovn-nbctl --may-exist lsp-add ls0 lp2 lp3 5], [1], [], |
b511690b | 127 | [ovn-nbctl: lp2: port already exists but has no tag_request |
d24d3372 BP |
128 | ]) |
129 | ||
f4e38e30 JP |
130 | OVN_NBCTL_TEST_STOP |
131 | AT_CLEANUP | |
132 | ||
133 | dnl --------------------------------------------------------------------- | |
134 | ||
7127583d | 135 | AT_SETUP([ovn-nbctl - lport addresses]) |
f4e38e30 JP |
136 | OVN_NBCTL_TEST_START |
137 | ||
ea46a4e9 | 138 | AT_CHECK([ovn-nbctl ls-add ls0]) |
31ed1192 JP |
139 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0]) |
140 | AT_CHECK([ovn-nbctl lsp-get-addresses lp0], [0], [dnl | |
f4e38e30 JP |
141 | ]) |
142 | ||
31ed1192 JP |
143 | AT_CHECK([ovn-nbctl lsp-set-addresses lp0 00:11:22:33:44:55 unknown]) |
144 | AT_CHECK([ovn-nbctl lsp-get-addresses lp0], [0], [dnl | |
f4e38e30 JP |
145 | 00:11:22:33:44:55 |
146 | unknown | |
147 | ]) | |
148 | ||
31ed1192 JP |
149 | AT_CHECK([ovn-nbctl lsp-set-addresses lp0]) |
150 | AT_CHECK([ovn-nbctl lsp-get-addresses lp0], [0], [dnl | |
f4e38e30 JP |
151 | ]) |
152 | ||
153 | OVN_NBCTL_TEST_STOP | |
154 | AT_CLEANUP | |
155 | ||
156 | dnl --------------------------------------------------------------------- | |
157 | ||
158 | AT_SETUP([ovn-nbctl - port security]) | |
159 | OVN_NBCTL_TEST_START | |
160 | ||
ea46a4e9 | 161 | AT_CHECK([ovn-nbctl ls-add ls0]) |
31ed1192 JP |
162 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0]) |
163 | AT_CHECK([ovn-nbctl lsp-get-addresses lp0], [0], [dnl | |
f4e38e30 JP |
164 | ]) |
165 | ||
31ed1192 JP |
166 | AT_CHECK([ovn-nbctl lsp-set-port-security lp0 aa:bb:cc:dd:ee:ff 00:11:22:33:44:55]) |
167 | AT_CHECK([ovn-nbctl lsp-get-port-security lp0], [0], [dnl | |
f4e38e30 JP |
168 | 00:11:22:33:44:55 |
169 | aa:bb:cc:dd:ee:ff | |
170 | ]) | |
171 | ||
31ed1192 JP |
172 | AT_CHECK([ovn-nbctl lsp-set-port-security lp0]) |
173 | AT_CHECK([ovn-nbctl lsp-get-port-security lp0], [0], [dnl | |
f4e38e30 JP |
174 | ]) |
175 | ||
176 | OVN_NBCTL_TEST_STOP | |
177 | AT_CLEANUP | |
8f96455d JP |
178 | |
179 | dnl --------------------------------------------------------------------- | |
180 | ||
181 | AT_SETUP([ovn-nbctl - ACLs]) | |
182 | OVN_NBCTL_TEST_START | |
183 | ||
ea46a4e9 | 184 | AT_CHECK([ovn-nbctl ls-add ls0]) |
70799ae8 | 185 | AT_CHECK([ovn-nbctl --log acl-add ls0 from-lport 600 udp drop]) |
d383eed5 | 186 | AT_CHECK([ovn-nbctl --log --name=test --severity=info acl-add ls0 to-lport 500 udp drop]) |
8f96455d JP |
187 | AT_CHECK([ovn-nbctl acl-add ls0 from-lport 400 tcp drop]) |
188 | AT_CHECK([ovn-nbctl acl-add ls0 to-lport 300 tcp drop]) | |
189 | AT_CHECK([ovn-nbctl acl-add ls0 from-lport 200 ip drop]) | |
190 | AT_CHECK([ovn-nbctl acl-add ls0 to-lport 100 ip drop]) | |
fa3cc9b9 HZ |
191 | dnl Add duplicated ACL |
192 | AT_CHECK([ovn-nbctl acl-add ls0 to-lport 100 ip drop], [1], [], [stderr]) | |
193 | AT_CHECK([grep 'already existed' stderr], [0], [ignore]) | |
194 | AT_CHECK([ovn-nbctl --may-exist acl-add ls0 to-lport 100 ip drop]) | |
8f96455d JP |
195 | |
196 | AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl | |
d383eed5 | 197 | from-lport 600 (udp) drop log() |
8f96455d JP |
198 | from-lport 400 (tcp) drop |
199 | from-lport 200 (ip) drop | |
d383eed5 | 200 | to-lport 500 (udp) drop log(name=test,severity=info) |
8f96455d JP |
201 | to-lport 300 (tcp) drop |
202 | to-lport 100 (ip) drop | |
203 | ]) | |
204 | ||
205 | dnl Delete in one direction. | |
206 | AT_CHECK([ovn-nbctl acl-del ls0 to-lport]) | |
207 | AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl | |
d383eed5 | 208 | from-lport 600 (udp) drop log() |
8f96455d JP |
209 | from-lport 400 (tcp) drop |
210 | from-lport 200 (ip) drop | |
211 | ]) | |
212 | ||
213 | dnl Delete all ACLs. | |
214 | AT_CHECK([ovn-nbctl acl-del ls0]) | |
215 | AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl | |
216 | ]) | |
217 | ||
218 | AT_CHECK([ovn-nbctl acl-add ls0 from-lport 600 udp drop]) | |
219 | AT_CHECK([ovn-nbctl acl-add ls0 from-lport 400 tcp drop]) | |
220 | AT_CHECK([ovn-nbctl acl-add ls0 from-lport 200 ip drop]) | |
221 | ||
222 | dnl Delete a single flow. | |
223 | AT_CHECK([ovn-nbctl acl-del ls0 from-lport 400 tcp]) | |
224 | AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl | |
225 | from-lport 600 (udp) drop | |
226 | from-lport 200 (ip) drop | |
227 | ]) | |
228 | ||
229 | OVN_NBCTL_TEST_STOP | |
e2bfcad6 | 230 | AT_CLEANUP |
231 | ||
5ee33cbd GL |
232 | dnl --------------------------------------------------------------------- |
233 | ||
234 | AT_SETUP([ovn-nbctl - QoS]) | |
235 | OVN_NBCTL_TEST_START | |
236 | ||
237 | AT_CHECK([ovn-nbctl ls-add ls0]) | |
238 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 tcp dscp=63]) | |
239 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 500 udp rate=100 burst=1000]) | |
240 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 400 tcp dscp=0 rate=300 burst=3000]) | |
241 | AT_CHECK([ovn-nbctl qos-add ls0 to-lport 300 tcp dscp=48]) | |
242 | AT_CHECK([ovn-nbctl qos-add ls0 to-lport 200 ip rate=101]) | |
243 | AT_CHECK([ovn-nbctl qos-add ls0 to-lport 100 ip4 dscp=13 rate=301 burst=30000]) | |
244 | ||
245 | dnl Add duplicated qos | |
246 | AT_CHECK([ovn-nbctl qos-add ls0 to-lport 100 ip4 dscp=11 rate=302 burst=30002], [1], [], [stderr]) | |
247 | AT_CHECK([grep 'already existed' stderr], [0], [ignore]) | |
248 | AT_CHECK([ovn-nbctl --may-exist qos-add ls0 to-lport 100 ip4 dscp=11 rate=302 burst=30002]) | |
249 | ||
250 | AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl | |
251 | from-lport 600 (tcp) dscp=63 | |
252 | from-lport 500 (udp) rate=100 burst=1000 | |
253 | from-lport 400 (tcp) rate=300 burst=3000 dscp=0 | |
254 | to-lport 300 (tcp) dscp=48 | |
255 | to-lport 200 (ip) rate=101 | |
256 | to-lport 100 (ip4) rate=301 burst=30000 dscp=13 | |
257 | ]) | |
258 | ||
259 | dnl Delete in one direction. | |
260 | AT_CHECK([ovn-nbctl qos-del ls0 to-lport]) | |
261 | AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl | |
262 | from-lport 600 (tcp) dscp=63 | |
263 | from-lport 500 (udp) rate=100 burst=1000 | |
264 | from-lport 400 (tcp) rate=300 burst=3000 dscp=0 | |
265 | ]) | |
266 | ||
267 | dnl Delete all qos_rules. | |
268 | AT_CHECK([ovn-nbctl qos-del ls0]) | |
269 | AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl | |
270 | ]) | |
271 | ||
272 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip rate=1000101]) | |
273 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 400 tcp dscp=44]) | |
274 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 200 ip burst=1000102 rate=301 dscp=19]) | |
275 | ||
276 | dnl Delete a single flow. | |
277 | AT_CHECK([ovn-nbctl qos-del ls0 from-lport 400 tcp]) | |
278 | AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl | |
279 | from-lport 600 (ip) rate=1000101 | |
280 | from-lport 200 (ip) rate=301 burst=1000102 dscp=19 | |
281 | ]) | |
282 | ||
283 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip rate=100010111111], [1], [], | |
284 | [ovn-nbctl: 100010111111: rate must in range 1...4294967295. | |
285 | ]) | |
286 | ||
287 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip burst=100010111112 rate=100010], [1], [], | |
288 | [ovn-nbctl: 100010111112: burst must in range 1...4294967295. | |
289 | ]) | |
290 | ||
291 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip dscp=-1], [1], [], | |
292 | [ovn-nbctl: -1: dscp must in range 0...63. | |
293 | ]) | |
294 | ||
295 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip dscpa=-1], [1], [], | |
296 | [ovn-nbctl: dscpa=-1: must be start of "dscp=", "rate=", "burst=". | |
297 | ]) | |
298 | ||
299 | AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip burst=123], [1], [], | |
300 | [ovn-nbctl: One of the rate or dscp must be configured. | |
301 | ]) | |
302 | ||
303 | OVN_NBCTL_TEST_STOP | |
304 | AT_CLEANUP | |
305 | ||
3722730e | 306 | dnl --------------------------------------------------------------------- |
307 | AT_SETUP([ovn-nbctl - NATs]) | |
308 | OVN_NBCTL_TEST_START | |
309 | AT_CHECK([ovn-nbctl lr-add lr0]) | |
310 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snatt 30.0.0.2 192.168.1.2], [1], [], | |
311 | [ovn-nbctl: snatt: type must be one of "dnat", "snat" and "dnat_and_snat". | |
312 | ]) | |
313 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2a 192.168.1.2], [1], [], | |
314 | [ovn-nbctl: 30.0.0.2a: should be an IPv4 address. | |
315 | ]) | |
316 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0 192.168.1.2], [1], [], | |
317 | [ovn-nbctl: 30.0.0: should be an IPv4 address. | |
318 | ]) | |
319 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2/24 192.168.1.2], [1], [], | |
320 | [ovn-nbctl: 30.0.0.2/24: should be an IPv4 address. | |
321 | ]) | |
322 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2:80 192.168.1.2], [1], [], | |
323 | [ovn-nbctl: 30.0.0.2:80: should be an IPv4 address. | |
324 | ]) | |
325 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1.2a], [1], [], | |
326 | [ovn-nbctl: 192.168.1.2a: should be an IPv4 address or network. | |
327 | ]) | |
328 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1], [1], [], | |
329 | [ovn-nbctl: 192.168.1: should be an IPv4 address or network. | |
330 | ]) | |
331 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1.2:80], [1], [], | |
332 | [ovn-nbctl: 192.168.1.2:80: should be an IPv4 address or network. | |
333 | ]) | |
334 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1.2/a], [1], [], | |
335 | [ovn-nbctl: 192.168.1.2/a: should be an IPv4 address or network. | |
336 | ]) | |
337 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.2 192.168.1.2a], [1], [], | |
338 | [ovn-nbctl: 192.168.1.2a: should be an IPv4 address. | |
339 | ]) | |
340 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.2 192.168.1], [1], [], | |
341 | [ovn-nbctl: 192.168.1: should be an IPv4 address. | |
342 | ]) | |
343 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.2 192.168.1.2:80], [1], [], | |
344 | [ovn-nbctl: 192.168.1.2:80: should be an IPv4 address. | |
345 | ]) | |
346 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.2 192.168.1.2/24], [1], [], | |
347 | [ovn-nbctl: 192.168.1.2/24: should be an IPv4 address. | |
348 | ]) | |
349 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.2/24], [1], [], | |
350 | [ovn-nbctl: 192.168.1.2/24: should be an IPv4 address. | |
351 | ]) | |
6a725785 MS |
352 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.2 lp0], [1], [], |
353 | [ovn-nbctl: lr-nat-add with logical_port must also specify external_mac. | |
354 | ]) | |
355 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.2 192.168.1.2 lp0 00:00:00:01:02:03], [1], [], | |
356 | [ovn-nbctl: logical_port and external_mac are only valid when type is "dnat_and_snat". | |
357 | ]) | |
358 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1.2 lp0 00:00:00:01:02:03], [1], [], | |
359 | [ovn-nbctl: logical_port and external_mac are only valid when type is "dnat_and_snat". | |
360 | ]) | |
361 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.2 lp0 00:00:00:01:02:03], [1], [], | |
362 | [ovn-nbctl: lp0: port name not found | |
363 | ]) | |
364 | AT_CHECK([ovn-nbctl ls-add ls0]) | |
365 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0]) | |
366 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.2 lp0 00:00:00:01:02], [1], [], | |
367 | [ovn-nbctl: invalid mac address 00:00:00:01:02. | |
368 | ]) | |
3722730e | 369 | |
370 | dnl Add snat and dnat | |
371 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.1 192.168.1.0/24]) | |
372 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.1 192.168.1.2]) | |
373 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.1 192.168.1.2]) | |
6a725785 | 374 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.3 lp0 00:00:00:01:02:03]) |
3722730e | 375 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], [dnl |
6a725785 | 376 | TYPE EXTERNAL_IP LOGICAL_IP EXTERNAL_MAC LOGICAL_PORT |
3722730e | 377 | dnat 30.0.0.1 192.168.1.2 |
378 | dnat_and_snat 30.0.0.1 192.168.1.2 | |
6a725785 | 379 | dnat_and_snat 30.0.0.2 192.168.1.3 00:00:00:01:02:03 lp0 |
3722730e | 380 | snat 30.0.0.1 192.168.1.0/24 |
381 | ]) | |
382 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.1 192.168.1.0/24], [1], [], | |
383 | [ovn-nbctl: 30.0.0.1, 192.168.1.0/24: a NAT with this external_ip and logical_ip already exists | |
384 | ]) | |
385 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.1 192.168.1.10/24], [1], [], | |
386 | [ovn-nbctl: 30.0.0.1, 192.168.1.0/24: a NAT with this external_ip and logical_ip already exists | |
387 | ]) | |
388 | AT_CHECK([ovn-nbctl --may-exist lr-nat-add lr0 snat 30.0.0.1 192.168.1.0/24]) | |
389 | AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 30.0.0.2 192.168.1.0/24], [1], [], | |
390 | [ovn-nbctl: a NAT with this type (snat) and logical_ip (192.168.1.0/24) already exists | |
391 | ]) | |
392 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.1 192.168.1.2], [1], [], | |
393 | [ovn-nbctl: 30.0.0.1, 192.168.1.2: a NAT with this external_ip and logical_ip already exists | |
394 | ]) | |
395 | AT_CHECK([ovn-nbctl --may-exist lr-nat-add lr0 dnat 30.0.0.1 192.168.1.2]) | |
396 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat 30.0.0.1 192.168.1.3], [1], [], | |
397 | [ovn-nbctl: a NAT with this type (dnat) and external_ip (30.0.0.1) already exists | |
398 | ]) | |
399 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.1 192.168.1.2], [1], [], | |
400 | [ovn-nbctl: 30.0.0.1, 192.168.1.2: a NAT with this external_ip and logical_ip already exists | |
401 | ]) | |
402 | AT_CHECK([ovn-nbctl --may-exist lr-nat-add lr0 dnat_and_snat 30.0.0.1 192.168.1.2]) | |
403 | AT_CHECK([ovn-nbctl lr-nat-add lr0 dnat_and_snat 30.0.0.1 192.168.1.3], [1], [], | |
404 | [ovn-nbctl: a NAT with this type (dnat_and_snat) and external_ip (30.0.0.1) already exists | |
405 | ]) | |
6a725785 MS |
406 | AT_CHECK([ovn-nbctl --may-exist lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.3 lp0 00:00:00:04:05:06]) |
407 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], [dnl | |
408 | TYPE EXTERNAL_IP LOGICAL_IP EXTERNAL_MAC LOGICAL_PORT | |
409 | dnat 30.0.0.1 192.168.1.2 | |
410 | dnat_and_snat 30.0.0.1 192.168.1.2 | |
411 | dnat_and_snat 30.0.0.2 192.168.1.3 00:00:00:04:05:06 lp0 | |
412 | snat 30.0.0.1 192.168.1.0/24 | |
413 | ]) | |
414 | AT_CHECK([ovn-nbctl --may-exist lr-nat-add lr0 dnat_and_snat 30.0.0.2 192.168.1.3]) | |
415 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], [dnl | |
416 | TYPE EXTERNAL_IP LOGICAL_IP EXTERNAL_MAC LOGICAL_PORT | |
417 | dnat 30.0.0.1 192.168.1.2 | |
418 | dnat_and_snat 30.0.0.1 192.168.1.2 | |
419 | dnat_and_snat 30.0.0.2 192.168.1.3 | |
420 | snat 30.0.0.1 192.168.1.0/24 | |
421 | ]) | |
3722730e | 422 | |
423 | dnl Deletes the NATs | |
6a725785 MS |
424 | AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat_and_snat 30.0.0.3], [1], [], |
425 | [ovn-nbctl: no matching NAT with the type (dnat_and_snat) and external_ip (30.0.0.3) | |
3722730e | 426 | ]) |
427 | AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat 30.0.0.2], [1], [], | |
428 | [ovn-nbctl: no matching NAT with the type (dnat) and external_ip (30.0.0.2) | |
429 | ]) | |
430 | AT_CHECK([ovn-nbctl lr-nat-del lr0 snat 192.168.10.0/24], [1], [], | |
431 | [ovn-nbctl: no matching NAT with the type (snat) and logical_ip (192.168.10.0/24) | |
432 | ]) | |
433 | AT_CHECK([ovn-nbctl --if-exists lr-nat-del lr0 snat 192.168.10.0/24]) | |
434 | ||
435 | AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat_and_snat 30.0.0.1]) | |
436 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], [dnl | |
6a725785 | 437 | TYPE EXTERNAL_IP LOGICAL_IP EXTERNAL_MAC LOGICAL_PORT |
3722730e | 438 | dnat 30.0.0.1 192.168.1.2 |
6a725785 | 439 | dnat_and_snat 30.0.0.2 192.168.1.3 |
3722730e | 440 | snat 30.0.0.1 192.168.1.0/24 |
441 | ]) | |
442 | ||
443 | AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat]) | |
444 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], [dnl | |
6a725785 MS |
445 | TYPE EXTERNAL_IP LOGICAL_IP EXTERNAL_MAC LOGICAL_PORT |
446 | dnat_and_snat 30.0.0.2 192.168.1.3 | |
3722730e | 447 | snat 30.0.0.1 192.168.1.0/24 |
448 | ]) | |
449 | ||
450 | AT_CHECK([ovn-nbctl lr-nat-del lr0]) | |
451 | AT_CHECK([ovn-nbctl lr-nat-list lr0], [0], []) | |
452 | AT_CHECK([ovn-nbctl lr-nat-del lr0]) | |
453 | AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat]) | |
454 | OVN_NBCTL_TEST_STOP | |
455 | AT_CLEANUP | |
456 | ||
e2bfcad6 | 457 | dnl --------------------------------------------------------------------- |
458 | ||
459 | AT_SETUP([ovn-nbctl - LBs]) | |
460 | OVN_NBCTL_TEST_START | |
461 | ||
462 | dnl Add two LBs. | |
463 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80a 192.168.10.10:80,192.168.10.20:80 tcp], [1], [], | |
c19105a0 | 464 | [ovn-nbctl: 30.0.0.10:80a: should be an IP address (or an IP address and a port number with : as a separator). |
e2bfcad6 | 465 | ]) |
466 | ||
467 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:a80 192.168.10.10:80,192.168.10.20:80 tcp], [1], [], | |
c19105a0 | 468 | [ovn-nbctl: 30.0.0.10:a80: should be an IP address (or an IP address and a port number with : as a separator). |
e2bfcad6 | 469 | ]) |
470 | ||
471 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10: 192.168.10.10:80,192.168.10.20:80 tcp], [1], [], | |
c19105a0 | 472 | [ovn-nbctl: 30.0.0.10:: should be an IP address (or an IP address and a port number with : as a separator). |
e2bfcad6 | 473 | ]) |
474 | ||
475 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80 192.168.10.10:80,192.168.10.20 tcp], [1], [], | |
c19105a0 | 476 | [ovn-nbctl: 192.168.10.20: should be an IP address and a port number with : as a separator. |
e2bfcad6 | 477 | ]) |
478 | ||
479 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.1a 192.168.10.10:80,192.168.10.20:80], [1], [], | |
c19105a0 | 480 | [ovn-nbctl: 30.0.0.1a: should be an IP address (or an IP address and a port number with : as a separator). |
e2bfcad6 | 481 | ]) |
482 | ||
483 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0 192.168.10.10:80,192.168.10.20:80], [1], [], | |
c19105a0 | 484 | [ovn-nbctl: 192.168.10.10:80: should be an IP address. |
e2bfcad6 | 485 | ]) |
486 | ||
487 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.10,192.168.10.20:80], [1], [], | |
c19105a0 | 488 | [ovn-nbctl: 192.168.10.20:80: should be an IP address. |
e2bfcad6 | 489 | ]) |
490 | ||
491 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.10:a80], [1], [], | |
c19105a0 | 492 | [ovn-nbctl: 192.168.10.10:a80: should be an IP address. |
e2bfcad6 | 493 | ]) |
494 | ||
495 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.10:], [1], [], | |
c19105a0 | 496 | [ovn-nbctl: 192.168.10.10:: should be an IP address. |
e2bfcad6 | 497 | ]) |
498 | ||
499 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.1a], [1], [], | |
c19105a0 | 500 | [ovn-nbctl: 192.168.10.1a: should be an IP address. |
e2bfcad6 | 501 | ]) |
502 | ||
503 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.10 tcp], [1], [], | |
504 | [ovn-nbctl: Protocol is unnecessary when no port of vip is given. | |
505 | ]) | |
506 | ||
507 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 192.168.10.10:900 tcp], [1], [], | |
508 | [ovn-nbctl: Protocol is unnecessary when no port of vip is given. | |
509 | ]) | |
510 | ||
511 | dnl Add ips to lb | |
512 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80 ,,,192.168.10.10:80,,,,,]) | |
513 | AT_CHECK([ovn-nbctl lb-add lb1 30.0.0.10:80 ,,,192.168.10.10:80,,,,192.168.10.20:80,,,,]) | |
c724bd67 | 514 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
515 | UUID LB PROTO VIP IPs |
516 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80 | |
517 | <1> lb1 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
e2bfcad6 | 518 | ]) |
519 | AT_CHECK([ovn-nbctl lb-del lb0]) | |
520 | AT_CHECK([ovn-nbctl lb-del lb1]) | |
521 | ||
522 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80]) | |
523 | AT_CHECK([ovn-nbctl lb-add lb1 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 tcp]) | |
c724bd67 | 524 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
525 | UUID LB PROTO VIP IPs |
526 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
527 | <1> lb1 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
e2bfcad6 | 528 | ]) |
529 | ||
530 | dnl Update the VIP of the lb1. | |
531 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080]) | |
c724bd67 | 532 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
533 | UUID LB PROTO VIP IPs |
534 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
535 | <1> lb1 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
e2bfcad6 | 536 | ]) |
537 | ||
538 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 udp]) | |
c724bd67 | 539 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
540 | UUID LB PROTO VIP IPs |
541 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
542 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
e2bfcad6 | 543 | ]) |
544 | ||
545 | dnl Config lb1 with another VIP. | |
546 | AT_CHECK([ovn-nbctl lb-add lb1 30.0.0.20:80 192.168.10.10:80 udp]) | |
c724bd67 | 547 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
548 | UUID LB PROTO VIP IPs |
549 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
550 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
551 | udp 30.0.0.20:80 192.168.10.10:80 | |
e2bfcad6 | 552 | ]) |
553 | ||
554 | AT_CHECK([ovn-nbctl lb-del lb1 30.0.0.20:80]) | |
c724bd67 | 555 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
556 | UUID LB PROTO VIP IPs |
557 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
558 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
e2bfcad6 | 559 | ]) |
560 | ||
561 | dnl Add LBs whose vip is just an IP address. | |
562 | AT_CHECK([ovn-nbctl lb-add lb2 30.0.0.30 192.168.10.10]) | |
563 | AT_CHECK([ovn-nbctl lb-add lb3 30.0.0.30 192.168.10.10]) | |
c724bd67 | 564 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
565 | UUID LB PROTO VIP IPs |
566 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
567 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
568 | <2> lb2 tcp/udp 30.0.0.30 192.168.10.10 | |
569 | <3> lb3 tcp/udp 30.0.0.30 192.168.10.10 | |
e2bfcad6 | 570 | ]) |
571 | AT_CHECK([ovn-nbctl lb-del lb2 30.0.0.30]) | |
572 | AT_CHECK([ovn-nbctl lb-del lb3 30.0.0.30]) | |
573 | ||
574 | AT_CHECK([ovn-nbctl lb-add lb2 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 tcp]) | |
575 | AT_CHECK([ovn-nbctl --add-duplicate lb-add lb2 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 tcp]) | |
c724bd67 | 576 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
577 | UUID LB PROTO VIP IPs |
578 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
579 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:8080 | |
580 | <2> lb2 tcp 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 | |
581 | <3> lb2 tcp 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 | |
e2bfcad6 | 582 | ]) |
583 | ||
584 | dnl If there are multiple load balancers with the same name, use a UUID to update/delete. | |
585 | AT_CHECK([ovn-nbctl lb-add lb2 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 tcp], [1], [], | |
586 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
587 | ]) | |
588 | ||
589 | AT_CHECK([ovn-nbctl lb-del lb2], [1], [], | |
590 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
591 | ]) | |
592 | ||
593 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 30.0.0.10:80 192.168.10.10:8080,192.168.10.20:8080 udp]) | |
594 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 30.0.0.10:8080 192.168.10.10:8080,192.168.10.20:8080 udp]) | |
595 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 30.0.0.10:9090 192.168.10.10:8080,192.168.10.20:8080 udp]) | |
596 | AT_CHECK([ovn-nbctl lb-del lb0 30.0.0.10:80]) | |
597 | AT_CHECK([ovn-nbctl lb-del lb1]) | |
c724bd67 | 598 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
599 | UUID LB PROTO VIP IPs |
600 | <0> lb2 tcp 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 | |
601 | <1> lb2 tcp 30.0.0.10:8080 192.168.10.10:80,192.168.10.20:80 | |
e2bfcad6 | 602 | ]) |
603 | ||
604 | dnl Add load balancer to logical switch. | |
605 | AT_CHECK([ovn-nbctl ls-add ls0]) | |
606 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80]) | |
607 | AT_CHECK([ovn-nbctl lb-add lb1 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 udp]) | |
608 | AT_CHECK([ovn-nbctl lb-add lb3 30.0.0.10 192.168.10.10,192.168.10.20]) | |
609 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb0]) | |
610 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb1]) | |
611 | AT_CHECK([ovn-nbctl --may-exist ls-lb-add ls0 lb1]) | |
612 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb2], [1], [], | |
613 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
614 | ]) | |
615 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb3]) | |
616 | ||
c724bd67 | 617 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], [dnl |
c19105a0 MM |
618 | UUID LB PROTO VIP IPs |
619 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
620 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
621 | <2> lb3 tcp/udp 30.0.0.10 192.168.10.10,192.168.10.20 | |
e2bfcad6 | 622 | ]) |
623 | ||
624 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb0]) | |
c724bd67 | 625 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], [dnl |
c19105a0 MM |
626 | UUID LB PROTO VIP IPs |
627 | <0> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
628 | <1> lb3 tcp/udp 30.0.0.10 192.168.10.10,192.168.10.20 | |
e2bfcad6 | 629 | ]) |
630 | ||
631 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb1]) | |
632 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb3]) | |
c724bd67 | 633 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], []) |
e2bfcad6 | 634 | AT_CHECK([ovn-nbctl --if-exists ls-lb-del ls0 lb1]) |
635 | ||
636 | dnl Remove all load balancers from logical switch. | |
637 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb0]) | |
638 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb1]) | |
639 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb3]) | |
640 | AT_CHECK([ovn-nbctl ls-lb-del ls0]) | |
c724bd67 | 641 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], []) |
e2bfcad6 | 642 | |
643 | dnl Add load balancer to logical router. | |
644 | AT_CHECK([ovn-nbctl lr-add lr0]) | |
645 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb0]) | |
646 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb1]) | |
647 | AT_CHECK([ovn-nbctl --may-exist lr-lb-add lr0 lb1]) | |
648 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb2], [1], [], | |
649 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
650 | ]) | |
651 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb3]) | |
652 | ||
c724bd67 | 653 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], [dnl |
c19105a0 MM |
654 | UUID LB PROTO VIP IPs |
655 | <0> lb0 tcp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
656 | <1> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
657 | <2> lb3 tcp/udp 30.0.0.10 192.168.10.10,192.168.10.20 | |
e2bfcad6 | 658 | ]) |
659 | ||
660 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb0]) | |
c724bd67 | 661 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], [dnl |
c19105a0 MM |
662 | UUID LB PROTO VIP IPs |
663 | <0> lb1 udp 30.0.0.10:80 192.168.10.10:80,192.168.10.20:80 | |
664 | <1> lb3 tcp/udp 30.0.0.10 192.168.10.10,192.168.10.20 | |
e2bfcad6 | 665 | ]) |
666 | ||
667 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb1]) | |
668 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb3]) | |
c724bd67 | 669 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], []) |
e2bfcad6 | 670 | AT_CHECK([ovn-nbctl --if-exists lr-lb-del lr0 lb1]) |
671 | ||
672 | dnl Remove all load balancers from logical router. | |
673 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb0]) | |
674 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb1]) | |
675 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb3]) | |
676 | AT_CHECK([ovn-nbctl lr-lb-del lr0]) | |
c724bd67 | 677 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], []) |
e2bfcad6 | 678 | |
679 | OVN_NBCTL_TEST_STOP | |
8f96455d | 680 | AT_CLEANUP |
c19105a0 MM |
681 | dnl |
682 | dnl --------------------------------------------------------------------- | |
683 | ||
684 | AT_SETUP([ovn-nbctl - LBs IPv6]) | |
685 | OVN_NBCTL_TEST_START | |
686 | ||
687 | dnl A bunch of commands that should fail | |
688 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80a [[fd0f::10]]:80,[[fd0f::20]]:80 tcp], [1], [], | |
689 | [ovn-nbctl: [[ae0f::10]]:80a: should be an IP address (or an IP address and a port number with : as a separator). | |
690 | ]) | |
691 | ||
692 | ||
693 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:a80 [[fd0f::10]]:80,[[fd0f::20]]:80 tcp], [1], [], | |
694 | [ovn-nbctl: [[ae0f::10]]:a80: should be an IP address (or an IP address and a port number with : as a separator). | |
695 | ]) | |
696 | ||
697 | ||
698 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]: [[fd0f::10]]:80,[[fd0f::20]]:80 tcp], [1], [], | |
699 | [ovn-nbctl: [[ae0f::10]]:: should be an IP address (or an IP address and a port number with : as a separator). | |
700 | ]) | |
701 | ||
702 | ||
703 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80 [[fd0f::10]]:80,fd0f::20 tcp], [1], [], | |
704 | [ovn-nbctl: fd0f::20: should be an IP address and a port number with : as a separator. | |
705 | ]) | |
706 | ||
707 | ||
708 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10fff [[fd0f::10]]:80,fd0f::20 tcp], [1], [], | |
709 | [ovn-nbctl: ae0f::10fff: should be an IP address (or an IP address and a port number with : as a separator). | |
710 | ]) | |
711 | ||
712 | ||
713 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 [[fd0f::10]]:80,[[fd0f::20]]:80], [1], [], | |
714 | [ovn-nbctl: [[fd0f::10]]:80: should be an IP address. | |
715 | ]) | |
716 | ||
717 | ||
718 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 fd0f::10,[[fd0f::20]]:80], [1], [], | |
719 | [ovn-nbctl: [[fd0f::20]]:80: should be an IP address. | |
720 | ]) | |
721 | ||
722 | ||
723 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 [[fd0f::10]]:a80], [1], [], | |
724 | [ovn-nbctl: [[fd0f::10]]:a80: should be an IP address. | |
725 | ]) | |
726 | ||
727 | ||
728 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 [[fd0f::10]]:], [1], [], | |
729 | [ovn-nbctl: [[fd0f::10]]:: should be an IP address. | |
730 | ]) | |
731 | ||
732 | ||
733 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 fd0f::1001a], [1], [], | |
734 | [ovn-nbctl: fd0f::1001a: should be an IP address. | |
735 | ]) | |
736 | ||
737 | ||
738 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 fd0f::10 tcp], [1], [], | |
739 | [ovn-nbctl: Protocol is unnecessary when no port of vip is given. | |
740 | ]) | |
741 | ||
742 | ||
743 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 [[fd0f::10]]:900 tcp], [1], [], | |
744 | [ovn-nbctl: Protocol is unnecessary when no port of vip is given. | |
745 | ]) | |
746 | ||
747 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 192.168.10.10], [1], [], | |
748 | [ovn-nbctl: 192.168.10.10: IP address family is different from VIP ae0f::10. | |
749 | ]) | |
750 | ||
751 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 192.168.10.10], [1], [], | |
752 | [ovn-nbctl: 192.168.10.10: IP address family is different from VIP ae0f::10. | |
753 | ]) | |
754 | ||
755 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80 192.168.10.10:80], [1], [], | |
756 | [ovn-nbctl: 192.168.10.10:80: IP address family is different from VIP [[ae0f::10]]:80. | |
757 | ]) | |
758 | ||
759 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10 ae0f::10], [1], [], | |
760 | [ovn-nbctl: ae0f::10: IP address family is different from VIP 30.0.0.10. | |
761 | ]) | |
762 | ||
763 | AT_CHECK([ovn-nbctl lb-add lb0 30.0.0.10:80 [[ae0f::10]]:80], [1], [], | |
764 | [ovn-nbctl: [[ae0f::10]]:80: IP address family is different from VIP 30.0.0.10:80. | |
765 | ]) | |
766 | ||
767 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f::10 fd0f::10]) | |
768 | AT_CHECK([ovn-nbctl lb-add lb0 ae0f:0000:0000:0000:0000:0000:0000:0010 fd0f::20], | |
769 | [1], [], [ovn-nbctl: lb0: a load balancer with this vip (ae0f::10) already exists | |
770 | ]) | |
771 | ||
772 | AT_CHECK([ovn-nbctl lb-del lb0]) | |
773 | ||
774 | dnl Add ips to lb | |
775 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80 ,,,[[fd0f::10]]:80,,,,,]) | |
776 | AT_CHECK([ovn-nbctl lb-add lb1 [[ae0f::10]]:80 ,,,[[fd0f::10]]:80,,,,[[fd0f::20]]:80,,,,]) | |
c724bd67 | 777 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
778 | UUID LB PROTO VIP IPs |
779 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80 | |
780 | <1> lb1 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
781 | ]) | |
782 | AT_CHECK([ovn-nbctl lb-del lb0]) | |
783 | AT_CHECK([ovn-nbctl lb-del lb1]) | |
784 | ||
785 | ||
786 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80]) | |
787 | AT_CHECK([ovn-nbctl lb-add lb1 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 tcp]) | |
c724bd67 | 788 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
789 | UUID LB PROTO VIP IPs |
790 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
791 | <1> lb1 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
792 | ]) | |
793 | ||
794 | dnl Update the VIP of the lb1. | |
795 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080]) | |
c724bd67 | 796 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
797 | UUID LB PROTO VIP IPs |
798 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
799 | <1> lb1 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
800 | ]) | |
801 | ||
802 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 udp]) | |
c724bd67 | 803 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
804 | UUID LB PROTO VIP IPs |
805 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
806 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
807 | ]) | |
808 | ||
809 | dnl Config lb1 with another VIP. | |
810 | AT_CHECK([ovn-nbctl lb-add lb1 [[ae0f::20]]:80 [[fd0f::10]]:80 udp]) | |
c724bd67 | 811 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
812 | UUID LB PROTO VIP IPs |
813 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
814 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
815 | udp [[ae0f::20]]:80 [[fd0f::10]]:80 | |
816 | ]) | |
817 | ||
818 | AT_CHECK([ovn-nbctl lb-del lb1 [[ae0f::20]]:80]) | |
c724bd67 | 819 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
820 | UUID LB PROTO VIP IPs |
821 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
822 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
823 | ]) | |
7127583d | 824 | |
c19105a0 MM |
825 | dnl Add LBs whose vip is just an IP address. |
826 | AT_CHECK([ovn-nbctl lb-add lb2 ae0f::30 fd0f::10]) | |
827 | AT_CHECK([ovn-nbctl lb-add lb3 ae0f::30 fd0f::10]) | |
c724bd67 | 828 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
829 | UUID LB PROTO VIP IPs |
830 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
831 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
832 | <2> lb2 tcp/udp ae0f::30 fd0f::10 | |
833 | <3> lb3 tcp/udp ae0f::30 fd0f::10 | |
834 | ]) | |
835 | AT_CHECK([ovn-nbctl lb-del lb2 ae0f::30]) | |
836 | AT_CHECK([ovn-nbctl lb-del lb3 ae0f::30]) | |
837 | ||
838 | AT_CHECK([ovn-nbctl lb-add lb2 [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 tcp]) | |
839 | AT_CHECK([ovn-nbctl --add-duplicate lb-add lb2 [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 tcp]) | |
c724bd67 | 840 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
841 | UUID LB PROTO VIP IPs |
842 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
843 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:8080 | |
844 | <2> lb2 tcp [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
845 | <3> lb2 tcp [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
846 | ]) | |
847 | ||
848 | dnl If there are multiple load balancers with the same name, use a UUID to update/delete. | |
849 | AT_CHECK([ovn-nbctl lb-add lb2 [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 tcp], [1], [], | |
850 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
851 | ]) | |
852 | ||
853 | AT_CHECK([ovn-nbctl lb-del lb2], [1], [], | |
854 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
855 | ]) | |
856 | ||
857 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 [[ae0f::10]]:80 [[fd0f::10]]:8080,[[fd0f::20]]:8080 udp]) | |
858 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 [[ae0f::10]]:8080 [[fd0f::10]]:8080,[[fd0f::20]]:8080 udp]) | |
859 | AT_CHECK([ovn-nbctl --may-exist lb-add lb1 [[ae0f::10]]:9090 [[fd0f::10]]:8080,[[fd0f::20]]:8080 udp]) | |
860 | AT_CHECK([ovn-nbctl lb-del lb0 [[ae0f::10]]:80]) | |
861 | AT_CHECK([ovn-nbctl lb-del lb1]) | |
c724bd67 | 862 | AT_CHECK([ovn-nbctl lb-list | uuidfilt], [0], [dnl |
c19105a0 MM |
863 | UUID LB PROTO VIP IPs |
864 | <0> lb2 tcp [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
865 | <1> lb2 tcp [[ae0f::10]]:8080 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
866 | ]) | |
867 | ||
868 | dnl Add load balancer to logical switch. | |
869 | AT_CHECK([ovn-nbctl ls-add ls0]) | |
870 | AT_CHECK([ovn-nbctl lb-add lb0 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80]) | |
871 | AT_CHECK([ovn-nbctl lb-add lb1 [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 udp]) | |
872 | AT_CHECK([ovn-nbctl lb-add lb3 ae0f::10 fd0f::10,fd0f::20]) | |
873 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb0]) | |
874 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb1]) | |
875 | AT_CHECK([ovn-nbctl --may-exist ls-lb-add ls0 lb1]) | |
876 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb2], [1], [], | |
877 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
878 | ]) | |
879 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb3]) | |
880 | ||
c724bd67 | 881 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], [dnl |
c19105a0 MM |
882 | UUID LB PROTO VIP IPs |
883 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
884 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
885 | <2> lb3 tcp/udp ae0f::10 fd0f::10,fd0f::20 | |
886 | ]) | |
887 | ||
888 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb0]) | |
c724bd67 | 889 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], [dnl |
c19105a0 MM |
890 | UUID LB PROTO VIP IPs |
891 | <0> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
892 | <1> lb3 tcp/udp ae0f::10 fd0f::10,fd0f::20 | |
893 | ]) | |
894 | ||
895 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb1]) | |
896 | AT_CHECK([ovn-nbctl ls-lb-del ls0 lb3]) | |
c724bd67 | 897 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], []) |
c19105a0 MM |
898 | AT_CHECK([ovn-nbctl --if-exists ls-lb-del ls0 lb1]) |
899 | ||
900 | dnl Remove all load balancers from logical switch. | |
901 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb0]) | |
902 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb1]) | |
903 | AT_CHECK([ovn-nbctl ls-lb-add ls0 lb3]) | |
904 | AT_CHECK([ovn-nbctl ls-lb-del ls0]) | |
c724bd67 | 905 | AT_CHECK([ovn-nbctl ls-lb-list ls0 | uuidfilt], [0], []) |
c19105a0 MM |
906 | |
907 | dnl Add load balancer to logical router. | |
908 | AT_CHECK([ovn-nbctl lr-add lr0]) | |
909 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb0]) | |
910 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb1]) | |
911 | AT_CHECK([ovn-nbctl --may-exist lr-lb-add lr0 lb1]) | |
912 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb2], [1], [], | |
913 | [ovn-nbctl: Multiple load balancers named 'lb2'. Use a UUID. | |
914 | ]) | |
915 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb3]) | |
916 | ||
c724bd67 | 917 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], [dnl |
c19105a0 MM |
918 | UUID LB PROTO VIP IPs |
919 | <0> lb0 tcp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
920 | <1> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
921 | <2> lb3 tcp/udp ae0f::10 fd0f::10,fd0f::20 | |
922 | ]) | |
923 | ||
924 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb0]) | |
c724bd67 | 925 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], [dnl |
c19105a0 MM |
926 | UUID LB PROTO VIP IPs |
927 | <0> lb1 udp [[ae0f::10]]:80 [[fd0f::10]]:80,[[fd0f::20]]:80 | |
928 | <1> lb3 tcp/udp ae0f::10 fd0f::10,fd0f::20 | |
929 | ]) | |
930 | ||
931 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb1]) | |
932 | AT_CHECK([ovn-nbctl lr-lb-del lr0 lb3]) | |
c724bd67 | 933 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], []) |
c19105a0 MM |
934 | AT_CHECK([ovn-nbctl --if-exists lr-lb-del lr0 lb1]) |
935 | ||
936 | dnl Remove all load balancers from logical router. | |
937 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb0]) | |
938 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb1]) | |
939 | AT_CHECK([ovn-nbctl lr-lb-add lr0 lb3]) | |
940 | AT_CHECK([ovn-nbctl lr-lb-del lr0]) | |
c724bd67 | 941 | AT_CHECK([ovn-nbctl lr-lb-list lr0 | uuidfilt], [0], []) |
c19105a0 MM |
942 | |
943 | OVN_NBCTL_TEST_STOP | |
944 | AT_CLEANUP | |
7127583d NG |
945 | dnl --------------------------------------------------------------------- |
946 | ||
fa2a27b2 | 947 | AT_SETUP([ovn-nbctl - basic logical router commands]) |
7127583d NG |
948 | OVN_NBCTL_TEST_START |
949 | ||
fa2a27b2 | 950 | AT_CHECK([ovn-nbctl lr-add lr0]) |
c724bd67 | 951 | AT_CHECK([ovn-nbctl lr-list | uuidfilt], [0], [dnl |
7127583d NG |
952 | <0> (lr0) |
953 | ]) | |
954 | ||
fa2a27b2 | 955 | AT_CHECK([ovn-nbctl lr-add lr1]) |
c724bd67 | 956 | AT_CHECK([ovn-nbctl lr-list | uuidfilt], [0], [dnl |
7127583d NG |
957 | <0> (lr0) |
958 | <1> (lr1) | |
959 | ]) | |
960 | ||
fa2a27b2 | 961 | AT_CHECK([ovn-nbctl lr-del lr0]) |
c724bd67 | 962 | AT_CHECK([ovn-nbctl lr-list | uuidfilt], [0], [dnl |
7127583d NG |
963 | <0> (lr1) |
964 | ]) | |
965 | ||
966 | AT_CHECK([ovn-nbctl show lr0]) | |
fa2a27b2 | 967 | AT_CHECK([ovn-nbctl lr-add lr0]) |
c724bd67 | 968 | AT_CHECK([ovn-nbctl show lr0 | uuidfilt], [0], |
7a16f569 | 969 | [router <0> (lr0) |
7127583d | 970 | ]) |
fa2a27b2 JP |
971 | AT_CHECK([ovn-nbctl lr-add lr0], [1], [], |
972 | [ovn-nbctl: lr0: a router with this name already exists | |
7127583d | 973 | ]) |
fa2a27b2 | 974 | AT_CHECK([ovn-nbctl --may-exist lr-add lr0]) |
c724bd67 | 975 | AT_CHECK([ovn-nbctl show lr0 | uuidfilt], [0], |
7a16f569 | 976 | [router <0> (lr0) |
7127583d | 977 | ]) |
fa2a27b2 JP |
978 | AT_CHECK([ovn-nbctl --add-duplicate lr-add lr0]) |
979 | AT_CHECK([ovn-nbctl --may-exist --add-duplicate lr-add lr0], [1], [], | |
7127583d NG |
980 | [ovn-nbctl: --may-exist and --add-duplicate may not be used together |
981 | ]) | |
fa2a27b2 | 982 | AT_CHECK([ovn-nbctl lr-del lr0], [1], [], |
7127583d NG |
983 | [ovn-nbctl: Multiple logical routers named 'lr0'. Use a UUID. |
984 | ]) | |
985 | ||
fa2a27b2 JP |
986 | AT_CHECK([ovn-nbctl lr-del lr2], [1], [], |
987 | [ovn-nbctl: lr2: router name not found | |
7127583d | 988 | ]) |
fa2a27b2 | 989 | AT_CHECK([ovn-nbctl --if-exists lr-del lr2]) |
7127583d | 990 | |
fa2a27b2 JP |
991 | AT_CHECK([ovn-nbctl lr-add]) |
992 | AT_CHECK([ovn-nbctl lr-add]) | |
993 | AT_CHECK([ovn-nbctl --add-duplicate lr-add], [1], [], | |
7127583d NG |
994 | [ovn-nbctl: --add-duplicate requires specifying a name |
995 | ]) | |
fa2a27b2 | 996 | AT_CHECK([ovn-nbctl --may-exist lr-add], [1], [], |
7127583d NG |
997 | [ovn-nbctl: --may-exist requires specifying a name |
998 | ]) | |
999 | ||
1000 | OVN_NBCTL_TEST_STOP | |
1001 | AT_CLEANUP | |
1002 | ||
1003 | dnl --------------------------------------------------------------------- | |
1004 | ||
31114af7 | 1005 | AT_SETUP([ovn-nbctl - basic logical router port commands]) |
7127583d NG |
1006 | OVN_NBCTL_TEST_START |
1007 | ||
fa2a27b2 | 1008 | AT_CHECK([ovn-nbctl lr-add lr0]) |
10c3fcdf | 1009 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02 192.168.1.1/24], [1], [], |
1010 | [ovn-nbctl: lrp0: invalid mac address 00:00:00:01:02 | |
1011 | ]) | |
1012 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02:03:04 192.168.1.1/24], [1], [], | |
1013 | [ovn-nbctl: lrp0: invalid mac address 00:00:00:01:02:03:04 | |
1014 | ]) | |
1015 | ||
31114af7 | 1016 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02:03 192.168.1.1/24]) |
34a88a45 | 1017 | |
c724bd67 | 1018 | AT_CHECK([ovn-nbctl show lr0 | uuidfilt], [0], [dnl |
7a16f569 BP |
1019 | router <0> (lr0) |
1020 | port lrp0 | |
1021 | mac: "00:00:00:01:02:03" | |
1022 | networks: [["192.168.1.1/24"]] | |
34a88a45 JP |
1023 | ]) |
1024 | ||
31114af7 JP |
1025 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02:03 192.168.1.1/24], [1], [], |
1026 | [ovn-nbctl: lrp0: a port with this name already exists | |
7127583d | 1027 | ]) |
31114af7 | 1028 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp0 00:00:00:01:02:03 192.168.1.1/24]) |
c724bd67 | 1029 | AT_CHECK([ovn-nbctl lrp-list lr0 | uuidfilt], [0], [dnl |
7127583d NG |
1030 | <0> (lrp0) |
1031 | ]) | |
1032 | ||
4685e523 | 1033 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24 peer=lrp1-peer]) |
c724bd67 | 1034 | AT_CHECK([ovn-nbctl lrp-list lr0 | uuidfilt], [0], [dnl |
7127583d NG |
1035 | <0> (lrp0) |
1036 | <1> (lrp1) | |
1037 | ]) | |
1038 | ||
fa2a27b2 | 1039 | AT_CHECK([ovn-nbctl lr-add lr1]) |
31114af7 JP |
1040 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24], [1], [], |
1041 | [ovn-nbctl: lrp1: a port with this name already exists | |
7127583d NG |
1042 | ]) |
1043 | ||
31114af7 JP |
1044 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr1 lrp1 00:00:00:01:02:03 192.168.1.1/24], [1], [], |
1045 | [ovn-nbctl: lrp1: port already exists but in router lr0 | |
7127583d NG |
1046 | ]) |
1047 | ||
31114af7 JP |
1048 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:04:05:06 192.168.1.1/24], [1], [], |
1049 | [ovn-nbctl: lrp1: port already exists with mac 00:00:00:01:02:03 | |
7127583d NG |
1050 | ]) |
1051 | ||
31114af7 JP |
1052 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24], [1], [], |
1053 | [ovn-nbctl: lrp1: port already exists with mismatching peer | |
7127583d NG |
1054 | ]) |
1055 | ||
4685e523 JP |
1056 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 10.0.0.1/24 peer=lrp1-peer], [1], [], |
1057 | [ovn-nbctl: lrp1: port already exists with different network | |
1058 | ]) | |
1059 | ||
1060 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24 peer=lrp1-peer]) | |
31114af7 JP |
1061 | |
1062 | AT_CHECK([ovn-nbctl lrp-del lrp1]) | |
c724bd67 | 1063 | AT_CHECK([ovn-nbctl lrp-list lr0 | uuidfilt], [0], [dnl |
31114af7 | 1064 | <0> (lrp0) |
7127583d NG |
1065 | ]) |
1066 | ||
4685e523 JP |
1067 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24 10.0.0.1/24 peer=lrp1-peer]) |
1068 | ||
1069 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 192.168.1.1/24 172.16.0.1/24 peer=lrp1-peer], [1], [], | |
1070 | [ovn-nbctl: lrp1: port already exists with different network | |
1071 | ]) | |
1072 | ||
1073 | AT_CHECK([ovn-nbctl --may-exist lrp-add lr0 lrp1 00:00:00:01:02:03 10.0.0.1/24 192.168.1.1/24 peer=lrp1-peer]) | |
36f232bc VA |
1074 | |
1075 | OVN_NBCTL_TEST_STOP | |
1076 | AT_CLEANUP | |
1077 | ||
1078 | dnl --------------------------------------------------------------------- | |
1079 | ||
1080 | AT_SETUP([ovn-nbctl - logical router port gateway chassis]) | |
1081 | OVN_NBCTL_TEST_START | |
1082 | AT_CHECK([ovn-nbctl lr-add lr0]) | |
1083 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02:03 192.168.1.1/24]) | |
1084 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], []) | |
1085 | ||
1086 | AT_CHECK([ovn-nbctl lrp-set-gateway-chassis lp0 chassis1], [1], [], | |
1087 | [ovn-nbctl: lp0: port name not found | |
1088 | ]) | |
1089 | ||
1090 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lp0], [1], [], | |
1091 | [ovn-nbctl: lp0: port name not found | |
1092 | ]) | |
1093 | ||
1094 | AT_CHECK([ovn-nbctl lrp-del-gateway-chassis lp0 chassis1], [1], [], | |
1095 | [ovn-nbctl: lp0: port name not found | |
1096 | ]) | |
1097 | ||
1098 | AT_CHECK([ovn-nbctl lrp-del-gateway-chassis lrp0 chassis1], [1], [], | |
1099 | [ovn-nbctl: chassis chassis1 is not added to logical port lrp0 | |
1100 | ]) | |
1101 | AT_CHECK([ovn-nbctl lrp-set-gateway-chassis lrp0 chassis1]) | |
1102 | ||
1103 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], [dnl | |
1104 | lrp0-chassis1 0 | |
1105 | ]) | |
1106 | AT_CHECK([ovn-nbctl lrp-set-gateway-chassis lrp0 chassis1 10]) | |
1107 | ||
1108 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], [dnl | |
1109 | lrp0-chassis1 10 | |
1110 | ]) | |
1111 | AT_CHECK([ovn-nbctl lrp-set-gateway-chassis lrp0 chassis1 20]) | |
1112 | ||
1113 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], [dnl | |
1114 | lrp0-chassis1 20 | |
1115 | ]) | |
1116 | AT_CHECK([ovn-nbctl lrp-set-gateway-chassis lrp0 chassis2 5]) | |
1117 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], [dnl | |
1118 | lrp0-chassis1 20 | |
1119 | lrp0-chassis2 5 | |
1120 | ]) | |
1121 | ||
1122 | AT_CHECK([ovn-nbctl lrp-del-gateway-chassis lrp0 chassis1]) | |
1123 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0], [0], [dnl | |
1124 | lrp0-chassis2 5 | |
1125 | ]) | |
1126 | ||
1127 | AT_CHECK([ovn-nbctl lrp-del-gateway-chassis lrp0 chassis2]) | |
1128 | AT_CHECK([ovn-nbctl lrp-get-gateway-chassis lrp0]) | |
4685e523 | 1129 | |
7127583d NG |
1130 | OVN_NBCTL_TEST_STOP |
1131 | AT_CLEANUP | |
1132 | ||
1133 | dnl --------------------------------------------------------------------- | |
1134 | ||
31114af7 | 1135 | AT_SETUP([ovn-nbctl - logical router port enable and disable]) |
7127583d NG |
1136 | OVN_NBCTL_TEST_START |
1137 | ||
fa2a27b2 | 1138 | AT_CHECK([ovn-nbctl lr-add lr0]) |
31114af7 JP |
1139 | AT_CHECK([ovn-nbctl lrp-add lr0 lrp0 00:00:00:01:02:03 192.168.1.1/24]) |
1140 | AT_CHECK([ovn-nbctl lrp-get-enabled lrp0], [0], [enabled | |
7127583d NG |
1141 | ]) |
1142 | ||
31114af7 JP |
1143 | AT_CHECK([ovn-nbctl lrp-set-enabled lrp0 disabled]) |
1144 | AT_CHECK([ovn-nbctl lrp-get-enabled lrp0], [0], [disabled | |
7127583d NG |
1145 | ]) |
1146 | ||
31114af7 JP |
1147 | AT_CHECK([ovn-nbctl lrp-set-enabled lrp0 enabled]) |
1148 | AT_CHECK([ovn-nbctl lrp-get-enabled lrp0], [0], [enabled | |
7127583d NG |
1149 | ]) |
1150 | ||
31114af7 | 1151 | AT_CHECK([ovn-nbctl lrp-set-enabled lrp0 xyzzy], [1], [], |
7127583d NG |
1152 | [ovn-nbctl: xyzzy: state must be "enabled" or "disabled" |
1153 | ]) | |
1154 | ||
1155 | OVN_NBCTL_TEST_STOP | |
1156 | AT_CLEANUP | |
e48ccf3c JP |
1157 | |
1158 | dnl --------------------------------------------------------------------- | |
1159 | ||
1160 | AT_SETUP([ovn-nbctl - routes]) | |
1161 | OVN_NBCTL_TEST_START | |
1162 | ||
1163 | AT_CHECK([ovn-nbctl lr-add lr0]) | |
1164 | ||
1165 | dnl Check IPv4 routes | |
1166 | AT_CHECK([ovn-nbctl lr-route-add lr0 0.0.0.0/0 192.168.0.1]) | |
1167 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.1.0/24 11.0.1.1 lp0]) | |
1168 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.1/24 11.0.0.2]) | |
1169 | ||
1170 | dnl Add overlapping route with 10.0.0.1/24 | |
1171 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.111/24 11.0.0.1], [1], [], | |
1172 | [ovn-nbctl: duplicate prefix: 10.0.0.0/24 | |
1173 | ]) | |
b712dea0 | 1174 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.111a/24 11.0.0.1], [1], [], |
1175 | [ovn-nbctl: bad prefix argument: 10.0.0.111a/24 | |
1176 | ]) | |
1177 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.111/24a 11.0.0.1], [1], [], | |
1178 | [ovn-nbctl: bad prefix argument: 10.0.0.111/24a | |
1179 | ]) | |
1180 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.111/24 11.0.0.1a], [1], [], | |
1181 | [ovn-nbctl: bad next hop argument: 11.0.0.1a | |
1182 | ]) | |
1183 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.111/24 11.0.0.1/24], [1], [], | |
1184 | [ovn-nbctl: bad IPv4 nexthop argument: 11.0.0.1/24 | |
1185 | ]) | |
1186 | AT_CHECK([ovn-nbctl lr-route-add lr0 2001:0db8:1::/64 2001:0db8:0:f103::1/64], [1], [], | |
1187 | [ovn-nbctl: bad IPv6 nexthop argument: 2001:0db8:0:f103::1/64 | |
1188 | ]) | |
1189 | ||
e48ccf3c | 1190 | AT_CHECK([ovn-nbctl --may-exist lr-route-add lr0 10.0.0.111/24 11.0.0.1]) |
440a9f4b | 1191 | AT_CHECK([ovn-nbctl --policy=src-ip lr-route-add lr0 9.16.1.0/24 11.0.0.1]) |
e48ccf3c JP |
1192 | |
1193 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1194 | IPv4 Routes | |
440a9f4b GS |
1195 | 10.0.0.0/24 11.0.0.1 dst-ip |
1196 | 10.0.1.0/24 11.0.1.1 dst-ip lp0 | |
1197 | 9.16.1.0/24 11.0.0.1 src-ip | |
1198 | 0.0.0.0/0 192.168.0.1 dst-ip | |
e48ccf3c JP |
1199 | ]) |
1200 | ||
01a528f3 GS |
1201 | AT_CHECK([ovn-nbctl --may-exist lr-route-add lr0 10.0.0.111/24 11.0.0.1 lp1]) |
1202 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1203 | IPv4 Routes | |
440a9f4b GS |
1204 | 10.0.0.0/24 11.0.0.1 dst-ip lp1 |
1205 | 10.0.1.0/24 11.0.1.1 dst-ip lp0 | |
1206 | 9.16.1.0/24 11.0.0.1 src-ip | |
1207 | 0.0.0.0/0 192.168.0.1 dst-ip | |
01a528f3 GS |
1208 | ]) |
1209 | ||
e48ccf3c JP |
1210 | dnl Delete non-existent prefix |
1211 | AT_CHECK([ovn-nbctl lr-route-del lr0 10.0.2.1/24], [1], [], | |
1212 | [ovn-nbctl: no matching prefix: 10.0.2.0/24 | |
1213 | ]) | |
1214 | AT_CHECK([ovn-nbctl --if-exists lr-route-del lr0 10.0.2.1/24]) | |
1215 | ||
1216 | AT_CHECK([ovn-nbctl lr-route-del lr0 10.0.1.1/24]) | |
440a9f4b | 1217 | AT_CHECK([ovn-nbctl lr-route-del lr0 9.16.1.0/24]) |
e48ccf3c JP |
1218 | |
1219 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1220 | IPv4 Routes | |
440a9f4b GS |
1221 | 10.0.0.0/24 11.0.0.1 dst-ip lp1 |
1222 | 0.0.0.0/0 192.168.0.1 dst-ip | |
e48ccf3c JP |
1223 | ]) |
1224 | ||
1225 | AT_CHECK([ovn-nbctl lr-route-del lr0]) | |
1226 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1227 | ]) | |
1228 | ||
1229 | dnl Check IPv6 routes | |
8c7623fe | 1230 | AT_CHECK([ovn-nbctl lr-route-add lr0 0:0:0:0:0:0:0:0/0 2001:0db8:0:f101::1]) |
e48ccf3c JP |
1231 | AT_CHECK([ovn-nbctl lr-route-add lr0 2001:0db8:0::/64 2001:0db8:0:f102::1 lp0]) |
1232 | AT_CHECK([ovn-nbctl lr-route-add lr0 2001:0db8:1::/64 2001:0db8:0:f103::1]) | |
1233 | ||
1234 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1235 | IPv6 Routes | |
440a9f4b GS |
1236 | 2001:db8::/64 2001:db8:0:f102::1 dst-ip lp0 |
1237 | 2001:db8:1::/64 2001:db8:0:f103::1 dst-ip | |
1238 | ::/0 2001:db8:0:f101::1 dst-ip | |
e48ccf3c JP |
1239 | ]) |
1240 | ||
1241 | AT_CHECK([ovn-nbctl lr-route-del lr0 2001:0db8:0::/64]) | |
1242 | ||
1243 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1244 | IPv6 Routes | |
440a9f4b GS |
1245 | 2001:db8:1::/64 2001:db8:0:f103::1 dst-ip |
1246 | ::/0 2001:db8:0:f101::1 dst-ip | |
e48ccf3c JP |
1247 | ]) |
1248 | ||
1249 | AT_CHECK([ovn-nbctl lr-route-del lr0]) | |
1250 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1251 | ]) | |
1252 | ||
1253 | dnl Check IPv4 and IPv6 routes | |
1254 | AT_CHECK([ovn-nbctl lr-route-add lr0 0.0.0.0/0 192.168.0.1]) | |
1255 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.1.1/24 11.0.1.1 lp0]) | |
1256 | AT_CHECK([ovn-nbctl lr-route-add lr0 10.0.0.1/24 11.0.0.1]) | |
8c7623fe | 1257 | AT_CHECK([ovn-nbctl lr-route-add lr0 0:0:0:0:0:0:0:0/0 2001:0db8:0:f101::1]) |
e48ccf3c JP |
1258 | AT_CHECK([ovn-nbctl lr-route-add lr0 2001:0db8:0::/64 2001:0db8:0:f102::1 lp0]) |
1259 | AT_CHECK([ovn-nbctl lr-route-add lr0 2001:0db8:1::/64 2001:0db8:0:f103::1]) | |
1260 | ||
1261 | AT_CHECK([ovn-nbctl lr-route-list lr0], [0], [dnl | |
1262 | IPv4 Routes | |
440a9f4b GS |
1263 | 10.0.0.0/24 11.0.0.1 dst-ip |
1264 | 10.0.1.0/24 11.0.1.1 dst-ip lp0 | |
1265 | 0.0.0.0/0 192.168.0.1 dst-ip | |
e48ccf3c JP |
1266 | |
1267 | IPv6 Routes | |
440a9f4b GS |
1268 | 2001:db8::/64 2001:db8:0:f102::1 dst-ip lp0 |
1269 | 2001:db8:1::/64 2001:db8:0:f103::1 dst-ip | |
1270 | ::/0 2001:db8:0:f101::1 dst-ip | |
e48ccf3c JP |
1271 | ]) |
1272 | ||
1273 | OVN_NBCTL_TEST_STOP | |
1274 | AT_CLEANUP | |
173acc1c MM |
1275 | |
1276 | dnl --------------------------------------------------------------------- | |
1277 | ||
1278 | AT_SETUP([ovn-nbctl - lsp types]) | |
1279 | OVN_NBCTL_TEST_START | |
1280 | ||
1281 | AT_CHECK([ovn-nbctl ls-add ls0]) | |
1282 | AT_CHECK([ovn-nbctl lsp-add ls0 lp0]) | |
1283 | ||
1284 | dnl switchport type defaults to empty | |
1285 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1286 | ||
1287 | ]) | |
1288 | ||
1289 | dnl The following are the valid entries for | |
1290 | dnl switchport type | |
1291 | AT_CHECK([ovn-nbctl lsp-set-type lp0 l2gateway]) | |
1292 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1293 | l2gateway | |
1294 | ]) | |
1295 | ||
1296 | AT_CHECK([ovn-nbctl lsp-set-type lp0 router]) | |
1297 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1298 | router | |
1299 | ]) | |
1300 | ||
1301 | AT_CHECK([ovn-nbctl lsp-set-type lp0 localnet]) | |
1302 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1303 | localnet | |
1304 | ]) | |
1305 | ||
1306 | AT_CHECK([ovn-nbctl lsp-set-type lp0 localport]) | |
1307 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1308 | localport | |
1309 | ]) | |
1310 | ||
1311 | AT_CHECK([ovn-nbctl lsp-set-type lp0 vtep]) | |
1312 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1313 | vtep | |
1314 | ]) | |
1315 | ||
1316 | dnl All of these are valid southbound port types but | |
1317 | dnl should be rejected for northbound logical switch | |
1318 | dnl ports. | |
1319 | AT_CHECK([ovn-nbctl lsp-set-type lp0 l3gateway], [1], [], [dnl | |
1320 | ovn-nbctl: Logical switch port type 'l3gateway' is unrecognized. Not setting type. | |
1321 | ]) | |
1322 | AT_CHECK([ovn-nbctl lsp-set-type lp0 patch], [1], [], [dnl | |
1323 | ovn-nbctl: Logical switch port type 'patch' is unrecognized. Not setting type. | |
1324 | ]) | |
1325 | AT_CHECK([ovn-nbctl lsp-set-type lp0 chassisredirect], [1], [], [dnl | |
1326 | ovn-nbctl: Logical switch port type 'chassisredirect' is unrecognized. Not setting type. | |
1327 | ]) | |
1328 | ||
1329 | dnl switch port type should still be "vtep" since previous | |
1330 | dnl commands failed. | |
1331 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1332 | vtep | |
1333 | ]) | |
1334 | ||
1335 | dnl Attempt a nonsense type | |
1336 | AT_CHECK([ovn-nbctl lsp-set-type lp0 eggs], [1], [], [dnl | |
1337 | ovn-nbctl: Logical switch port type 'eggs' is unrecognized. Not setting type. | |
1338 | ]) | |
1339 | ||
1340 | dnl Empty string should work too | |
1341 | AT_CHECK([ovn-nbctl lsp-set-type lp0 ""]) | |
1342 | AT_CHECK([ovn-nbctl lsp-get-type lp0], [0], [dnl | |
1343 | ||
1344 | ]) | |
1345 | ||
1346 | OVN_NBCTL_TEST_STOP | |
1347 | AT_CLEANUP | |
3ffed5cb GL |
1348 | |
1349 | dnl --------------------------------------------------------------------- | |
1350 | ||
1351 | AT_SETUP([ovn-nbctl - connection]) | |
1352 | OVN_NBCTL_TEST_START | |
1353 | ||
1354 | AT_CHECK([ovn-nbctl --inactivity-probe=30000 set-connection ptcp:6641:127.0.0.1 punix:$OVS_RUNDIR/ovnnb_db.sock]) | |
1355 | AT_CHECK([ovn-nbctl list connection | grep inactivity_probe], [0], [dnl | |
1356 | inactivity_probe : 30000 | |
1357 | inactivity_probe : 30000 | |
1358 | ]) | |
1359 | ||
1360 | OVN_NBCTL_TEST_STOP | |
1361 | AT_CLEANUP |