2016-12-20 13:28 GMT-08:00 Joe Stringer <[email protected]>: > All of the commands starting L7 servers duplicate detailed specifics > which inhibits readability, and makes it difficult to ensure that the > servers are ready before the test proceeds. Add a new macro that > provides simpler semantics from the test perspective and hide the > details in the macro. A followup patch will extend this macro to ensure > that servers are ready to serve requests before the test proceeds. > > Signed-off-by: Joe Stringer <[email protected]>
Makes sense, thanks. There are still a couple NETNS_DAEMONIZE in system-ovn.at that could be replaced. One more comment below. Acked-by: Daniele Di Proietto <[email protected]> > --- > tests/system-common-macros.at | 11 ++++ > tests/system-ovn.at | 6 +-- > tests/system-traffic.at | 121 > +++++++++++++++++++++++------------------- > 3 files changed, 79 insertions(+), 59 deletions(-) > > diff --git a/tests/system-common-macros.at b/tests/system-common-macros.at > index d41de2366695..eb5478d38d1b 100644 > --- a/tests/system-common-macros.at > +++ b/tests/system-common-macros.at > @@ -230,6 +230,17 @@ m4_define([NETNS_DAEMONIZE], > m4_define([OVS_CHECK_FIREWALL], > [AT_SKIP_IF([systemctl status firewalld 2>&1 | grep running > > /dev/null])]) > > +# OVS_START_L7([namespace], [protocol]) > +# > +# Start a server serving 'protocol' within 'namespace'. The server will exit > +# when the test finishes. > +# > +m4_define([OVS_START_L7], > + [PIDFILE=$(mktemp $2XXX.log) Should this be .pid? > + NETNS_DAEMONIZE([$1], [[$PYTHON $srcdir/test-l7.py $2]], [$PIDFILE]) > + ] > +) > + > # OVS_CHECK_VXLAN() > # > # Do basic check for vxlan functionality, skip the test if it's not there. > diff --git a/tests/system-ovn.at b/tests/system-ovn.at > index 9e323424a2a1..7b35e84a43d2 100644 > --- a/tests/system-ovn.at > +++ b/tests/system-ovn.at > @@ -581,9 +581,9 @@ ovn-nbctl set load_balancer $uuid > vips:'"30.0.0.2:8000"'='"172.16.1.2:80,172.16. > OVS_WAIT_UNTIL([ovs-ofctl -O OpenFlow13 dump-groups br-int | grep ct\(]) > > # Start webservers in 'bar1', 'bar2' and 'bar3'. > -NETNS_DAEMONIZE([bar1], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > -NETNS_DAEMONIZE([bar2], [[$PYTHON $srcdir/test-l7.py]], [http2.pid]) > -NETNS_DAEMONIZE([bar3], [[$PYTHON $srcdir/test-l7.py]], [http3.pid]) > +OVS_START_L7([bar1], [http]) > +OVS_START_L7([bar2], [http]) > +OVS_START_L7([bar3], [http]) > > dnl Should work with the virtual IP 30.0.0.1 address through NAT > for i in `seq 1 20`; do > diff --git a/tests/system-traffic.at b/tests/system-traffic.at > index d70c5c3f0b87..67e06a11805b 100644 > --- a/tests/system-traffic.at > +++ b/tests/system-traffic.at > @@ -37,7 +37,7 @@ NS_CHECK_EXEC([at_ns0], [ping -q -c 3 -i 0.3 -w 2 10.1.1.2 > | FORMAT_PING], [0], > 3 packets transmitted, 3 received, 0% packet loss, time 0ms > ]) > > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -668,17 +668,17 @@ priority=100,in_port=2,ct_state=+trk+est,tcp,action=1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns0], [http]) > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from ns0->ns1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > > tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),protoinfo=(state=<cleared>) > ]) > > dnl HTTP requests from ns1->ns0 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns1], [wget 10.1.1.1 -t 3 -T 1 -v -o wget1.log], [4]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -709,18 +709,17 @@ dnl waiting, we get occasional failures due to the > following error: > dnl "connect: Cannot assign requested address" > OVS_WAIT_UNTIL([ip netns exec at_ns0 ping6 -c 1 fc00::2]) > > -dnl HTTP requests from ns0->ns1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py http6]], [http0.pid]) > +OVS_START_L7([at_ns0], [http6]) > +OVS_START_L7([at_ns1], [http6]) > > +dnl HTTP requests from ns0->ns1 should work fine. > NS_CHECK_EXEC([at_ns0], [wget http://[[fc00::2]] -t 3 -T 1 > --retry-connrefused -v -o wget0.log]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(fc00::2)], [0], [dnl > > tcp,orig=(src=fc00::1,dst=fc00::2,sport=<cleared>,dport=<cleared>),reply=(src=fc00::2,dst=fc00::1,sport=<cleared>,dport=<cleared>),protoinfo=(state=<cleared>) > ]) > > dnl HTTP requests from ns1->ns0 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py http6]], [http1.pid]) > NS_CHECK_EXEC([at_ns1], [wget http://[[fc00::1]] -t 3 -T 1 -v -o wget1.log], > [4]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -843,12 +842,13 @@ priority=100,in_port=4,tcp,ct_state=+trk,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > dnl HTTP requests from p2->p3 should work fine. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 --retry-connrefused -v -o > wget1.log]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -883,12 +883,13 @@ priority=100,in_port=4,tcp,ct_state=+trk,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > dnl HTTP requests from p2->p3 should work fine. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 --retry-connrefused -v -o > wget1.log]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -927,11 +928,11 @@ AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > dnl We set up our rules to allow the request without committing. The return > dnl traffic can't be identified, because the initial request wasn't > committed. > dnl For the first pair of ports, this means that the connection fails. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log], [4]) > > dnl For the second pair, we allow packets from invalid connections, so it > works. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 --retry-connrefused -v -o > wget1.log]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -964,8 +965,10 @@ > priority=100,in_port=4,ct_state=+trk,ct_zone=1,tcp,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > @@ -974,7 +977,6 @@ > tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),reply=(src= > > dnl HTTP requests from p2->p3 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 -v -o wget1.log], [4]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.4)], [0], [dnl > @@ -1010,8 +1012,10 @@ > priority=100,in_port=4,ct_state=+trk,ct_zone=0x1001,tcp,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > @@ -1020,7 +1024,6 @@ > tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),reply=(src= > > dnl HTTP requests from p2->p3 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 -v -o wget1.log], [4]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.4)], [0], [dnl > @@ -1068,7 +1071,7 @@ AT_CHECK([ovs-ofctl --bundle add-flows br0 > flows-br0.txt]) > AT_CHECK([ovs-ofctl --bundle add-flows br1 flows-br1.txt]) > > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -1095,8 +1098,9 @@ > priority=100,in_port=2,ct_state=+trk,ct_zone=2,tcp,action=1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > dnl (again) HTTP requests from p0->p1 should work fine. > @@ -1141,8 +1145,9 @@ AT_CHECK([ping -q -c 3 -i 0.3 -w 2 10.1.1.2 | > FORMAT_PING], [0], [dnl > 3 packets transmitted, 3 received, 0% packet loss, time 0ms > ]) > > +OVS_START_L7([at_ns0], [http]) > + > dnl HTTP requests from root namespace to p0 should work fine. > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > AT_CHECK([wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o wget0.log]) > > dnl (again) HTTP requests from root namespace to p0 should work fine. > @@ -1183,8 +1188,9 @@ > priority=100,in_port=2,ct_state=+trk,ct_zone=1,tcp,action=1 > > AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > dnl (again) HTTP requests from p0->p1 should work fine. > @@ -1252,8 +1258,9 @@ AT_CHECK([ping -q -c 3 -i 0.3 -w 2 10.1.1.2 | > FORMAT_PING], [0], [dnl > 3 packets transmitted, 3 received, 0% packet loss, time 0ms > ]) > > +OVS_START_L7([at_ns0], [http]) > + > dnl HTTP requests from root namespace to p0 should work fine. > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > AT_CHECK([wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o wget0.log]) > > dnl (again) HTTP requests from root namespace to p0 should work fine. > @@ -1296,19 +1303,18 @@ > priority=100,in_port=4,ct_state=+trk,ct_mark=1,tcp,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > > tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),mark=1,protoinfo=(state=<cleared>) > ]) > > dnl HTTP requests from p2->p3 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 -v -o wget1.log], [4]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.4)], [0], [dnl > > tcp,orig=(src=10.1.1.3,dst=10.1.1.4,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.4,dst=10.1.1.3,sport=<cleared>,dport=<cleared>),mark=2,protoinfo=(state=<cleared>) > ]) > @@ -1340,8 +1346,9 @@ table=1,in_port=2,ct_state=+trk,ct_mark=3,tcp,action=1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > @@ -1377,19 +1384,18 @@ > priority=100,in_port=4,ct_state=+trk,ct_mark=1,tcp,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > > tcp,orig=(src=10.1.1.1,dst=10.1.1.2,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.2,dst=10.1.1.1,sport=<cleared>,dport=<cleared>),mark=1,protoinfo=(state=<cleared>) > ]) > > dnl HTTP requests from p2->p3 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 -v -o wget1.log], [4]) > - > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.4)], [0], [dnl > > tcp,orig=(src=10.1.1.3,dst=10.1.1.4,sport=<cleared>,dport=<cleared>),reply=(src=10.1.1.4,dst=10.1.1.3,sport=<cleared>,dport=<cleared>),mark=2,protoinfo=(state=<cleared>) > ]) > @@ -1424,13 +1430,14 @@ > priority=100,in_port=4,ct_state=+trk,ct_label=0x0a000d000005000001,tcp,action=3 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > +OVS_START_L7([at_ns3], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > dnl HTTP requests from p2->p3 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http1.pid]) > NS_CHECK_EXEC([at_ns2], [wget 10.1.1.4 -t 3 -T 1 -v -o wget1.log], [4]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -1460,8 +1467,9 @@ > table=1,in_port=2,ct_state=+trk,ct_label=0x200000001,tcp,action=1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > @@ -1497,8 +1505,9 @@ table=1,in_port=2,tcp,action=ct(zone=2),1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > +OVS_START_L7([at_ns1], [http]) > + > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 3 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2)], [0], [dnl > @@ -1631,8 +1640,8 @@ table=1,in_port=2,tcp,ct_state=+trk-new+rel,action=1 > > AT_CHECK([ovs-ofctl --bundle replace-flows br0 flows1.txt]) > > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp1.pid]) > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp0.pid]) > +OVS_START_L7([at_ns0], [ftp]) > +OVS_START_L7([at_ns1], [ftp]) > OVS_WAIT_UNTIL([ip netns exec at_ns1 netstat -l | grep ftp]) > > dnl FTP requests from p1->p0 should fail due to network failure. > @@ -1717,7 +1726,7 @@ dnl waiting, we get occasional failures due to the > following error: > dnl "connect: Cannot assign requested address" > OVS_WAIT_UNTIL([ip netns exec at_ns0 ping6 -c 1 fc00::2 >/dev/null]) > > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp0.pid]) > +OVS_START_L7([at_ns1], [ftp]) > OVS_WAIT_UNTIL([ip netns exec at_ns1 netstat -l | grep ftp]) > > dnl FTP requests from p0->p1 should work fine. > @@ -1767,8 +1776,8 @@ > table=2,in_port=2,tcp,ct_zone=1,ct_state=+trk+est,action=1 > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp1.pid]) > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp0.pid]) > +OVS_START_L7([at_ns0], [ftp]) > +OVS_START_L7([at_ns1], [ftp]) > > dnl FTP requests from p1->p0 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > @@ -2212,7 +2221,7 @@ table=10 priority=0 action=drop > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 5 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2) | sed -e > 's/dst=10.1.1.2[[45]][[0-9]]/dst=10.1.1.2XX/'], [0], [dnl > @@ -2260,7 +2269,7 @@ table=10 priority=0 action=drop > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 5 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2) | sed -e > 's/dst=10.1.1.2[[45]][[0-9]]/dst=10.1.1.2XX/'], [0], [dnl > @@ -2313,7 +2322,7 @@ table=10 priority=0 action=drop > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl HTTP requests from p0->p1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.2 -t 5 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.2) | sed -e > 's/dst=10.1.1.2[[45]][[0-9]]/dst=10.1.1.2XX/'], [0], [dnl > @@ -2361,7 +2370,7 @@ table=10 priority=0 action=drop > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl Should work with the virtual IP address through NAT > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.64 -t 5 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.64)], [0], [dnl > @@ -2422,7 +2431,7 @@ table=10 priority=0 action=drop > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl Should work with the virtual IP address through NAT > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py]], [http0.pid]) > +OVS_START_L7([at_ns1], [http]) > NS_CHECK_EXEC([at_ns0], [wget 10.1.1.64 -t 5 -T 1 --retry-connrefused -v -o > wget0.log]) > > AT_CHECK([ovs-appctl dpctl/dump-conntrack | FORMAT_CT(10.1.1.64)], [0], [dnl > @@ -2524,7 +2533,7 @@ m4_define([CHECK_FTP_NAT], > > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > - NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp0.pid]) > + OVS_START_L7([at_ns1], [ftp]) > OVS_WAIT_UNTIL([ip netns exec at_ns1 netstat -l | grep ftp]) > > dnl FTP requests from p0->p1 should work fine. > @@ -2705,13 +2714,13 @@ dnl "connect: Cannot assign requested address" > OVS_WAIT_UNTIL([ip netns exec at_ns0 ping6 -c 1 fc00::2]) > > dnl HTTP requests from ns0->ns1 should work fine. > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py http6]], [http0.pid]) > +OVS_START_L7([at_ns1], [http6]) > > NS_CHECK_EXEC([at_ns0], [wget http://[[fc00::2]] -t 3 -T 1 > --retry-connrefused -v -o wget0.log]) > > dnl HTTP requests from ns1->ns0 should fail due to network failure. > dnl Try 3 times, in 1 second intervals. > -NETNS_DAEMONIZE([at_ns0], [[$PYTHON $srcdir/test-l7.py http6]], [http1.pid]) > +OVS_START_L7([at_ns0], [http6]) > NS_CHECK_EXEC([at_ns1], [wget http://[[fc00::1]] -t 3 -T 1 -v -o wget1.log], > [4]) > > OVS_TRAFFIC_VSWITCHD_STOP > @@ -2762,7 +2771,7 @@ dnl waiting, we get occasional failures due to the > following error: > dnl "connect: Cannot assign requested address" > OVS_WAIT_UNTIL([ip netns exec at_ns0 ping6 -c 1 fc00::2 >/dev/null]) > > -NETNS_DAEMONIZE([at_ns1], [[$PYTHON $srcdir/test-l7.py ftp]], [ftp0.pid]) > +OVS_START_L7([at_ns1], [ftp]) > OVS_WAIT_UNTIL([ip netns exec at_ns1 netstat -l | grep ftp]) > > dnl FTP requests from p0->p1 should work fine. > @@ -2834,9 +2843,9 @@ table=10 priority=0 action=controller > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl Start web servers > -NETNS_DAEMONIZE([at_ns2], [[$PYTHON $srcdir/test-l7.py]], [http2.pid]) > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http3.pid]) > -NETNS_DAEMONIZE([at_ns4], [[$PYTHON $srcdir/test-l7.py]], [http4.pid]) > +OVS_START_L7([at_ns2], [http]) > +OVS_START_L7([at_ns3], [http]) > +OVS_START_L7([at_ns4], [http]) > > on_exit 'ovs-ofctl -O OpenFlow15 dump-flows br0' > on_exit 'ovs-appctl revalidator/purge' > @@ -2925,9 +2934,9 @@ table=10 priority=0 action=controller > AT_CHECK([ovs-ofctl --bundle add-flows br0 flows.txt]) > > dnl Start web servers > -NETNS_DAEMONIZE([at_ns2], [[$PYTHON $srcdir/test-l7.py]], [http2.pid]) > -NETNS_DAEMONIZE([at_ns3], [[$PYTHON $srcdir/test-l7.py]], [http3.pid]) > -NETNS_DAEMONIZE([at_ns4], [[$PYTHON $srcdir/test-l7.py]], [http4.pid]) > +OVS_START_L7([at_ns2], [http]) > +OVS_START_L7([at_ns3], [http]) > +OVS_START_L7([at_ns4], [http]) > > on_exit 'ovs-ofctl -O OpenFlow15 dump-flows br0' > on_exit 'ovs-appctl revalidator/purge' > -- > 2.10.2 > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
