]> git.proxmox.com Git - mirror_ovs.git/blame - tests/ovn-nbctl.at
ovs-thread: Do not always end quiescent state in ovs_thread_create().
[mirror_ovs.git] / tests / ovn-nbctl.at
CommitLineData
f4e38e30
JP
1AT_BANNER([ovn-nbctl])
2
3# OVN_NBCTL_TEST_START
4m4_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`"
f4e38e30
JP
12 AT_CHECK([[sed < stderr '
13/vlog|INFO|opened log file/d
14/ovsdb_server|INFO|ovsdb-server (Open vSwitch)/d']])
15 AT_CAPTURE_FILE([ovsdb-server.log])
16])
17
18# OVN_NBCTL_TEST_STOP
19m4_define([OVN_NBCTL_TEST_STOP],
fb496f92
NS
20 [# removes all 'Broken pipe' warning logs from ovsdb-server.log. this is in
21 # that *ctl command (e.g. ovn-nbctl) exits right after committing the change
22 # to database. however, in reaction, some daemon (e.g. ovn-controller-vtep)
23 # may immediately update the database. this later update may cause database
24 # sending update back to *ctl command if *ctl has not proceeded to exit yet.
25 # and if *ctl command exits before database calling send, the send from
26 # database will fail with 'Broken pipe' error.
27 AT_CHECK([check_logs "$1
28/Broken pipe/d"])
d9c8c57c 29 OVS_APP_EXIT_AND_WAIT([ovsdb-server])])
f4e38e30
JP
30
31
32AT_SETUP([ovn-nbctl - basic lswitch commands])
33OVN_NBCTL_TEST_START
34
35AT_CHECK([ovn-nbctl lswitch-add ls0])
36AT_CHECK([ovn-nbctl lswitch-list | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
37<0> (ls0)
38])
39
40AT_CHECK([ovn-nbctl lswitch-add ls1])
41AT_CHECK([ovn-nbctl lswitch-list | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
42<0> (ls0)
43<1> (ls1)
44])
45
46AT_CHECK([ovn-nbctl lswitch-del ls0])
47AT_CHECK([ovn-nbctl lswitch-list | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
48<0> (ls1)
49])
50
51OVN_NBCTL_TEST_STOP
52AT_CLEANUP
53
54dnl ---------------------------------------------------------------------
55
56AT_SETUP([ovn-nbctl - basic lport commands])
57OVN_NBCTL_TEST_START
58
59AT_CHECK([ovn-nbctl lswitch-add ls0])
60AT_CHECK([ovn-nbctl lport-add ls0 lp0])
61AT_CHECK([ovn-nbctl lport-list ls0 | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
62<0> (lp0)
63])
64
65AT_CHECK([ovn-nbctl lport-add ls0 lp1])
66AT_CHECK([ovn-nbctl lport-list ls0 | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
67<0> (lp0)
68<1> (lp1)
69])
70
71AT_CHECK([ovn-nbctl lport-del lp1])
72AT_CHECK([ovn-nbctl lport-list ls0 | ${PERL} $srcdir/uuidfilt.pl], [0], [dnl
73<0> (lp0)
74])
75
76OVN_NBCTL_TEST_STOP
77AT_CLEANUP
78
79dnl ---------------------------------------------------------------------
80
2fa326a3 81AT_SETUP([ovn-nbctl - addresses])
f4e38e30
JP
82OVN_NBCTL_TEST_START
83
84AT_CHECK([ovn-nbctl lswitch-add ls0])
85AT_CHECK([ovn-nbctl lport-add ls0 lp0])
2fa326a3 86AT_CHECK([ovn-nbctl lport-get-addresses lp0], [0], [dnl
f4e38e30
JP
87])
88
2fa326a3
BP
89AT_CHECK([ovn-nbctl lport-set-addresses lp0 00:11:22:33:44:55 unknown])
90AT_CHECK([ovn-nbctl lport-get-addresses lp0], [0], [dnl
f4e38e30
JP
9100:11:22:33:44:55
92unknown
93])
94
2fa326a3
BP
95AT_CHECK([ovn-nbctl lport-set-addresses lp0])
96AT_CHECK([ovn-nbctl lport-get-addresses lp0], [0], [dnl
f4e38e30
JP
97])
98
99OVN_NBCTL_TEST_STOP
100AT_CLEANUP
101
102dnl ---------------------------------------------------------------------
103
104AT_SETUP([ovn-nbctl - port security])
105OVN_NBCTL_TEST_START
106
107AT_CHECK([ovn-nbctl lswitch-add ls0])
108AT_CHECK([ovn-nbctl lport-add ls0 lp0])
2fa326a3 109AT_CHECK([ovn-nbctl lport-get-addresses lp0], [0], [dnl
f4e38e30
JP
110])
111
112AT_CHECK([ovn-nbctl lport-set-port-security lp0 aa:bb:cc:dd:ee:ff 00:11:22:33:44:55])
113AT_CHECK([ovn-nbctl lport-get-port-security lp0], [0], [dnl
11400:11:22:33:44:55
115aa:bb:cc:dd:ee:ff
116])
117
118AT_CHECK([ovn-nbctl lport-set-port-security lp0])
119AT_CHECK([ovn-nbctl lport-get-port-security lp0], [0], [dnl
120])
121
122OVN_NBCTL_TEST_STOP
123AT_CLEANUP
8f96455d
JP
124
125dnl ---------------------------------------------------------------------
126
127AT_SETUP([ovn-nbctl - ACLs])
128OVN_NBCTL_TEST_START
129
130AT_CHECK([ovn-nbctl lswitch-add ls0])
70799ae8
BP
131AT_CHECK([ovn-nbctl --log acl-add ls0 from-lport 600 udp drop])
132AT_CHECK([ovn-nbctl --log acl-add ls0 to-lport 500 udp drop])
8f96455d
JP
133AT_CHECK([ovn-nbctl acl-add ls0 from-lport 400 tcp drop])
134AT_CHECK([ovn-nbctl acl-add ls0 to-lport 300 tcp drop])
135AT_CHECK([ovn-nbctl acl-add ls0 from-lport 200 ip drop])
136AT_CHECK([ovn-nbctl acl-add ls0 to-lport 100 ip drop])
137
138AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl
139from-lport 600 (udp) drop log
140from-lport 400 (tcp) drop
141from-lport 200 (ip) drop
142 to-lport 500 (udp) drop log
143 to-lport 300 (tcp) drop
144 to-lport 100 (ip) drop
145])
146
147dnl Delete in one direction.
148AT_CHECK([ovn-nbctl acl-del ls0 to-lport])
149AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl
150from-lport 600 (udp) drop log
151from-lport 400 (tcp) drop
152from-lport 200 (ip) drop
153])
154
155dnl Delete all ACLs.
156AT_CHECK([ovn-nbctl acl-del ls0])
157AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl
158])
159
160AT_CHECK([ovn-nbctl acl-add ls0 from-lport 600 udp drop])
161AT_CHECK([ovn-nbctl acl-add ls0 from-lport 400 tcp drop])
162AT_CHECK([ovn-nbctl acl-add ls0 from-lport 200 ip drop])
163
164dnl Delete a single flow.
165AT_CHECK([ovn-nbctl acl-del ls0 from-lport 400 tcp])
166AT_CHECK([ovn-nbctl acl-list ls0], [0], [dnl
167from-lport 600 (udp) drop
168from-lport 200 (ip) drop
169])
170
171OVN_NBCTL_TEST_STOP
172AT_CLEANUP