From ad34a56e5678cb27bbae35e70abb4098d4c2c2f4 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 02:07:57 +0100 Subject: [PATCH 01/15] simplify NXDOMAIN test - remove premature abstraction - only do one check --- test/200_dns_test.sh | 3 +-- test/config.sh | 12 ------------ 2 files changed, 1 insertion(+), 14 deletions(-) diff --git a/test/200_dns_test.sh b/test/200_dns_test.sh index b0717349..c2fca822 100755 --- a/test/200_dns_test.sh +++ b/test/200_dns_test.sh @@ -15,7 +15,6 @@ weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/s assert_dns_record $HOST1 c1 $NAME $C2 -assert_dns_status $HOST1 c1 "MX seetwo.weave.local" NXDOMAIN -assert_dns_status $HOST1 c1 "AAAA seetwo.weave.local" NXDOMAIN +assert_raises "exec_on $HOST1 c1 dig MX seetwo.weave.local | grep -q \"status: NXDOMAIN\"" end_suite diff --git a/test/config.sh b/test/config.sh index 72fd59d1..49765726 100644 --- a/test/config.sh +++ b/test/config.sh @@ -88,18 +88,6 @@ exec_on() { docker -H tcp://$host:2375 exec $container "$@" } -dig_on() { - host=$1 - cont=$2 - query=$3 - docker -H tcp://$host:2375 exec $cont sh -c "dig $query" -} - -# assert_dns_status -assert_dns_status() { - assert_raises "dig_on \"$1\" \"$2\" \"$3\" | grep -q \"status: $4\"" -} - # assert_dns_record assert_dns_record() { assert "exec_on $1 $2 getent hosts $3 | tr -s ' '" "$4 $3" From a94d2ef277304ebbb4b912d5cca7a4163ba9c419 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 18:13:40 +0100 Subject: [PATCH 02/15] remove pointless quoting --- test/config.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/config.sh b/test/config.sh index 49765726..84d731f0 100644 --- a/test/config.sh +++ b/test/config.sh @@ -85,7 +85,7 @@ exec_on() { host=$1 container=$2 shift 2 - docker -H tcp://$host:2375 exec $container "$@" + docker -H tcp://$host:2375 exec $container $@ } # assert_dns_record From 352e31c88b3c4534096f858fabeb7fb0bb1e9566 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:00:35 +0100 Subject: [PATCH 03/15] remove all the `weave_on` hacks that existed because it was echoing a message to stdout, which it no longer does. As a result there is now no mention of the docker tcp host/port outside config.sh. --- test/120_ipam_test.sh | 5 ++--- test/140_ipam_expose_test.sh | 4 +--- test/250_dns_ipam_test.sh | 8 +++----- test/500_weave_multi_cidr_test.sh | 22 ++++------------------ 4 files changed, 10 insertions(+), 29 deletions(-) diff --git a/test/120_ipam_test.sh b/test/120_ipam_test.sh index f7cb15d1..0b75c068 100755 --- a/test/120_ipam_test.sh +++ b/test/120_ipam_test.sh @@ -11,8 +11,7 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh weave_on $HOST2 run -t --name=c2 gliderlabs/alpine /bin/sh -# Note can't use weave_on here because it echoes the command -C2IP=$(DOCKER_HOST=tcp://$HOST2:2375 $WEAVE ps | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') -assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2IP" +C2=$(weave_on $HOST2 ps | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') +assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" end_suite diff --git a/test/140_ipam_expose_test.sh b/test/140_ipam_expose_test.sh index b0ed95c1..1e828960 100755 --- a/test/140_ipam_expose_test.sh +++ b/test/140_ipam_expose_test.sh @@ -35,9 +35,7 @@ weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh weave_on $HOST1 run -t --name=c2 gliderlabs/alpine /bin/sh weave_on $HOST1 run $C3/24 -t --name=c3 gliderlabs/alpine /bin/sh weave_on $HOST1 run $C4/24 -t --name=c4 gliderlabs/alpine /bin/sh - -# Note can't use weave_on here because it echoes the command -C1=$(DOCKER_HOST=tcp://$HOST1:2375 $WEAVE ps c1 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') +C1=$(weave_on $HOST1 ps c1 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') # absence of host connectivity by default run_on1 "! $PING $C1" diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index 57298a51..3c4bef46 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -14,11 +14,9 @@ weave_on $HOST2 launch-dns 10.2.254.2/24 weave_on $HOST2 run -t --name=c2 -h seetwo.weave.local gliderlabs/alpine /bin/sh weave_on $HOST1 run --with-dns --name=c1 -t aanand/docker-dnsutils /bin/sh +C2=$(weave_on $HOST2 ps c2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') -# Note can't use weave_on here because it echoes the command -C2IP=$(DOCKER_HOST=tcp://$HOST2:2375 $WEAVE ps c2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') - -assert "exec_on $HOST1 c1 dig +short seetwo.weave.local" "$C2IP" -assert "exec_on $HOST1 c1 dig +short -x $C2IP" "seetwo.weave.local." +assert "exec_on $HOST1 c1 dig +short seetwo.weave.local" "$C2" +assert "exec_on $HOST1 c1 dig +short -x $C2" "seetwo.weave.local." end_suite diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index f9cdf3d8..989919c4 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -7,20 +7,6 @@ start_suite "Weave run/start/attach/detach with multiple cidr arguments" weave_on $HOST1 launch weave_on $HOST1 launch-dns 10.254.254.254/24 -# weave_status_on -weave_status_on() { - HOST=$1; shift - - DOCKER_HOST=tcp://$HOST:2375 $WEAVE status -} - -# weave_ps_on -weave_ps_on() { - HOST=$1; shift - - DOCKER_HOST=tcp://$HOST:2375 $WEAVE ps -} - # assert_container_cidrs [ ...] assert_container_cidrs() { HOST=$1; shift @@ -28,7 +14,7 @@ assert_container_cidrs() { CIDRS=$@ # Assert container has attached CIDRs - assert_raises "weave_ps_on $HOST | grep \"^$CID [^ ]* $CIDRS$\"" + assert_raises "weave_on $HOST ps | grep \"^$CID [^ ]* $CIDRS$\"" } # assert_zone_records [ ...] @@ -38,11 +24,11 @@ assert_zone_records() { FQDN=$1; shift # Assert correct number of records exist - assert "weave_status_on $HOST | grep \"^$CID\" | wc -l" $# + assert "weave_on $HOST status | grep \"^$CID\" | wc -l" $# # Assert correct records exist for IP in $@; do - assert_raises "weave_status_on $HOST | grep \"^$CID $IP $FQDN$\"" + assert_raises "weave_on $HOST status | grep \"^$CID $IP $FQDN$\"" done } @@ -58,7 +44,7 @@ assert_bridge_cidrs() { } # Run container with three cidrs -CID=$(DOCKER_HOST=tcp://$HOST1:2375 $WEAVE run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) +CID=$(weave_on $HOST1 run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.1.1 10.2.2.1 10.2.3.1 From bb8a745431f39ceac99dab7bce0f1c2f49914cc1 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:05:19 +0100 Subject: [PATCH 04/15] cosmetic: helper functions come first --- test/500_weave_multi_cidr_test.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index 989919c4..43f44fed 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -2,11 +2,6 @@ . ./config.sh -start_suite "Weave run/start/attach/detach with multiple cidr arguments" - -weave_on $HOST1 launch -weave_on $HOST1 launch-dns 10.254.254.254/24 - # assert_container_cidrs [ ...] assert_container_cidrs() { HOST=$1; shift @@ -43,6 +38,11 @@ assert_bridge_cidrs() { assert "echo $BRIDGE_CIDRS" "$CIDRS" } +start_suite "Weave run/start/attach/detach with multiple cidr arguments" + +weave_on $HOST1 launch +weave_on $HOST1 launch-dns 10.254.254.254/24 + # Run container with three cidrs CID=$(weave_on $HOST1 run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 From 2647fd4c92268910a6c816ada4f4a76f47df966a Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:14:23 +0100 Subject: [PATCH 05/15] extract helper for obtaining container ip address thus keeping the ghastly regexp in one place instead of three. --- test/120_ipam_test.sh | 2 +- test/140_ipam_expose_test.sh | 2 +- test/250_dns_ipam_test.sh | 2 +- test/config.sh | 4 ++++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/test/120_ipam_test.sh b/test/120_ipam_test.sh index 0b75c068..d0a22bc8 100755 --- a/test/120_ipam_test.sh +++ b/test/120_ipam_test.sh @@ -11,7 +11,7 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh weave_on $HOST2 run -t --name=c2 gliderlabs/alpine /bin/sh -C2=$(weave_on $HOST2 ps | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') +C2=$(container_ip $HOST2 c2) assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" end_suite diff --git a/test/140_ipam_expose_test.sh b/test/140_ipam_expose_test.sh index 1e828960..32b61981 100755 --- a/test/140_ipam_expose_test.sh +++ b/test/140_ipam_expose_test.sh @@ -35,7 +35,7 @@ weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh weave_on $HOST1 run -t --name=c2 gliderlabs/alpine /bin/sh weave_on $HOST1 run $C3/24 -t --name=c3 gliderlabs/alpine /bin/sh weave_on $HOST1 run $C4/24 -t --name=c4 gliderlabs/alpine /bin/sh -C1=$(weave_on $HOST1 ps c1 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') +C1=$(container_ip $HOST1 c1) # absence of host connectivity by default run_on1 "! $PING $C1" diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index 3c4bef46..7db9779f 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -14,7 +14,7 @@ weave_on $HOST2 launch-dns 10.2.254.2/24 weave_on $HOST2 run -t --name=c2 -h seetwo.weave.local gliderlabs/alpine /bin/sh weave_on $HOST1 run --with-dns --name=c1 -t aanand/docker-dnsutils /bin/sh -C2=$(weave_on $HOST2 ps c2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') +C2=$(container_ip $HOST2 c2) assert "exec_on $HOST1 c1 dig +short seetwo.weave.local" "$C2" assert "exec_on $HOST1 c1 dig +short -x $C2" "seetwo.weave.local." diff --git a/test/config.sh b/test/config.sh index 84d731f0..e1109fa8 100644 --- a/test/config.sh +++ b/test/config.sh @@ -88,6 +88,10 @@ exec_on() { docker -H tcp://$host:2375 exec $container $@ } +container_ip() { + weave_on $1 ps $2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' +} + # assert_dns_record assert_dns_record() { assert "exec_on $1 $2 getent hosts $3 | tr -s ' '" "$4 $3" From 822cab775084a007a69408de4daaf255034d05d2 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:22:31 +0100 Subject: [PATCH 06/15] use assert_dns_record in ipam test instead of homegrown version that uses dig --- test/250_dns_ipam_test.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index 7db9779f..c0e7a931 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -3,6 +3,7 @@ . ./config.sh UNIVERSE=10.2.3.0/24 +NAME=seetwo.weave.local start_suite "Resolve names over cross-host weave network with IPAM" @@ -12,11 +13,10 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 weave_on $HOST2 launch-dns 10.2.254.2/24 -weave_on $HOST2 run -t --name=c2 -h seetwo.weave.local gliderlabs/alpine /bin/sh +weave_on $HOST2 run -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh weave_on $HOST1 run --with-dns --name=c1 -t aanand/docker-dnsutils /bin/sh C2=$(container_ip $HOST2 c2) -assert "exec_on $HOST1 c1 dig +short seetwo.weave.local" "$C2" -assert "exec_on $HOST1 c1 dig +short -x $C2" "seetwo.weave.local." +assert_dns_record $HOST1 c1 $NAME $C2 end_suite From 535a6ae199708966c11f81a884586a72845ad8aa Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:56:17 +0100 Subject: [PATCH 07/15] consistent `docker run` parameter order --- test/210_dns_multicast_test.sh | 2 +- test/250_dns_ipam_test.sh | 2 +- test/300_fallback_dns_test.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/210_dns_multicast_test.sh b/test/210_dns_multicast_test.sh index a315028e..fd22b0fe 100755 --- a/test/210_dns_multicast_test.sh +++ b/test/210_dns_multicast_test.sh @@ -15,7 +15,7 @@ weave_on $HOST1 launch-dns 10.2.254.1/24 -debug weave_on $HOST2 launch-dns 10.2.254.2/24 -debug weave_on $HOST2 run $C2/24 -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh -weave_on $HOST1 run --with-dns $C1/24 --name=c1 -t aanand/docker-dnsutils /bin/sh +weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index c0e7a931..347ff28a 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -14,7 +14,7 @@ weave_on $HOST1 launch-dns 10.2.254.1/24 weave_on $HOST2 launch-dns 10.2.254.2/24 weave_on $HOST2 run -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh -weave_on $HOST1 run --with-dns --name=c1 -t aanand/docker-dnsutils /bin/sh +weave_on $HOST1 run --with-dns -t --name=c1 aanand/docker-dnsutils /bin/sh C2=$(container_ip $HOST2 c2) assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/300_fallback_dns_test.sh b/test/300_fallback_dns_test.sh index c9f94b94..f654b01b 100755 --- a/test/300_fallback_dns_test.sh +++ b/test/300_fallback_dns_test.sh @@ -6,7 +6,7 @@ start_suite "Resolve a non-weave address" weave_on $HOST1 launch-dns 10.2.254.1/24 -debug -weave_on $HOST1 run --with-dns 10.2.1.5/24 --name=c1 -t aanand/docker-dnsutils /bin/sh +weave_on $HOST1 run --with-dns 10.2.1.5/24 -t --name=c1 aanand/docker-dnsutils /bin/sh assert_raises "exec_on $HOST1 c1 host -t mx weave.works | grep google" assert_raises "exec_on $HOST1 c1 getent hosts 8.8.8.8 | grep google" From ab244f76f6a8922c8a6925167c707683fe4c5926 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 20:03:23 +0100 Subject: [PATCH 08/15] consistency --- test/500_weave_multi_cidr_test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index 43f44fed..b27b589f 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -44,7 +44,7 @@ weave_on $HOST1 launch weave_on $HOST1 launch-dns 10.254.254.254/24 # Run container with three cidrs -CID=$(weave_on $HOST1 run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) +CID=$(weave_on $HOST1 run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name=multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.1.1 10.2.2.1 10.2.3.1 From 1c1bd817e151deca1176e2faacf54a8ffd0dc118 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 19:50:27 +0100 Subject: [PATCH 09/15] extract startup of simple container There is now just one mention of the gliderlabs/alpine image outside config.sh. --- test/100_cross_hosts_test.sh | 4 ++-- test/110_encryption_test.sh | 4 ++-- test/120_ipam_test.sh | 4 ++-- test/130_expose_test.sh | 12 ++++-------- test/140_ipam_expose_test.sh | 8 ++++---- test/200_dns_test.sh | 2 +- test/210_dns_multicast_test.sh | 2 +- test/220_dns_custom_test.sh | 2 +- test/230_dns_unqualified_test.sh | 2 +- test/240_dns_add_name_test.sh | 2 +- test/250_dns_ipam_test.sh | 2 +- test/500_weave_multi_cidr_test.sh | 2 +- test/config.sh | 6 ++++++ 13 files changed, 27 insertions(+), 25 deletions(-) diff --git a/test/100_cross_hosts_test.sh b/test/100_cross_hosts_test.sh index 6d9a0e30..9a5d535b 100755 --- a/test/100_cross_hosts_test.sh +++ b/test/100_cross_hosts_test.sh @@ -10,8 +10,8 @@ start_suite "Ping over cross-host weave network" weave_on $HOST1 launch weave_on $HOST2 launch $HOST1 -weave_on $HOST2 run $C2/24 -t --name=c2 gliderlabs/alpine /bin/sh -weave_on $HOST1 run $C1/24 -t --name=c1 gliderlabs/alpine /bin/sh +start_container $HOST1 $C1/24 --name=c1 +start_container $HOST2 $C2/24 --name=c2 assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" end_suite diff --git a/test/110_encryption_test.sh b/test/110_encryption_test.sh index e5099b68..0f16aaa6 100755 --- a/test/110_encryption_test.sh +++ b/test/110_encryption_test.sh @@ -10,8 +10,8 @@ start_suite "Ping over encrypted cross-host weave network" weave_on $HOST1 launch -password notverysecure weave_on $HOST2 launch -password notverysecure $HOST1 -weave_on $HOST2 run $C2/24 -t --name=c2 gliderlabs/alpine /bin/sh -weave_on $HOST1 run $C1/24 -t --name=c1 gliderlabs/alpine /bin/sh +start_container $HOST1 $C1/24 --name=c1 +start_container $HOST2 $C2/24 --name=c2 assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" end_suite diff --git a/test/120_ipam_test.sh b/test/120_ipam_test.sh index d0a22bc8..23be4c1a 100755 --- a/test/120_ipam_test.sh +++ b/test/120_ipam_test.sh @@ -9,8 +9,8 @@ start_suite "Ping over cross-host weave network with IPAM" weave_on $HOST1 launch -iprange $UNIVERSE weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 -weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh -weave_on $HOST2 run -t --name=c2 gliderlabs/alpine /bin/sh +start_container $HOST1 --name=c1 +start_container $HOST2 --name=c2 C2=$(container_ip $HOST2 c2) assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" diff --git a/test/130_expose_test.sh b/test/130_expose_test.sh index 353fa408..1984c76f 100755 --- a/test/130_expose_test.sh +++ b/test/130_expose_test.sh @@ -29,18 +29,14 @@ check_container_connectivity() { # exec_on1 "c3 ! $PING $C1" } -start_container() { - weave_on $HOST1 run $2/24 --name=$1 -t gliderlabs/alpine /bin/sh -} - start_suite "exposing weave network to host" weave_on $HOST1 launch -start_container c1 $C1 -start_container c2 $C2 -start_container c3 $C3 -start_container c4 $C4 +start_container $HOST1 $C1/24 --name=c1 +start_container $HOST1 $C2/24 --name=c2 +start_container $HOST1 $C3/24 --name=c3 +start_container $HOST1 $C4/24 --name=c4 # absence of host connectivity by default run_on1 "! $PING $C1" diff --git a/test/140_ipam_expose_test.sh b/test/140_ipam_expose_test.sh index 32b61981..a1176068 100755 --- a/test/140_ipam_expose_test.sh +++ b/test/140_ipam_expose_test.sh @@ -31,10 +31,10 @@ start_suite "exposing weave network to host with IPAM" weave_on $HOST1 launch -iprange $R1 -weave_on $HOST1 run -t --name=c1 gliderlabs/alpine /bin/sh -weave_on $HOST1 run -t --name=c2 gliderlabs/alpine /bin/sh -weave_on $HOST1 run $C3/24 -t --name=c3 gliderlabs/alpine /bin/sh -weave_on $HOST1 run $C4/24 -t --name=c4 gliderlabs/alpine /bin/sh +start_container $HOST1 --name=c1 +start_container $HOST1 --name=c2 +start_container $HOST1 $C3/24 --name=c3 +start_container $HOST1 $C4/24 --name=c4 C1=$(container_ip $HOST1 c1) # absence of host connectivity by default diff --git a/test/200_dns_test.sh b/test/200_dns_test.sh index c2fca822..a43b1fc1 100755 --- a/test/200_dns_test.sh +++ b/test/200_dns_test.sh @@ -10,7 +10,7 @@ start_suite "Resolve names on a single host" weave_on $HOST1 launch-dns 10.2.254.1/24 -weave_on $HOST1 run $C2/24 -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh +start_container $HOST1 $C2/24 --name=c2 -h $NAME weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/210_dns_multicast_test.sh b/test/210_dns_multicast_test.sh index fd22b0fe..6e1886c9 100755 --- a/test/210_dns_multicast_test.sh +++ b/test/210_dns_multicast_test.sh @@ -14,7 +14,7 @@ weave_on $HOST2 launch $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 -debug weave_on $HOST2 launch-dns 10.2.254.2/24 -debug -weave_on $HOST2 run $C2/24 -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh +start_container $HOST2 $C2/24 --name=c2 -h $NAME weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/220_dns_custom_test.sh b/test/220_dns_custom_test.sh index 35d14d91..95546f2b 100755 --- a/test/220_dns_custom_test.sh +++ b/test/220_dns_custom_test.sh @@ -11,7 +11,7 @@ start_suite "Resolve names in custom domain" weave_on $HOST1 launch-dns 10.2.254.1/24 --domain $DOMAIN. -weave_on $HOST1 run $C2/24 -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh +start_container $HOST1 $C2/24 --name=c2 -h $NAME weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/230_dns_unqualified_test.sh b/test/230_dns_unqualified_test.sh index 3ceab5fc..29181613 100755 --- a/test/230_dns_unqualified_test.sh +++ b/test/230_dns_unqualified_test.sh @@ -12,7 +12,7 @@ start_suite "Resolve unqualified names" weave_on $HOST1 launch-dns 10.2.254.1/24 -weave_on $HOST1 run $C1/24 -t --name=c1 -h $NAME gliderlabs/alpine /bin/sh +start_container $HOST1 $C1/24 --name=c1 -h $NAME weave_on $HOST1 run --with-dns $C2/24 -t --name=c2 -h seetwo.$DOMAIN aanand/docker-dnsutils /bin/sh weave_on $HOST1 run --with-dns $C3/24 -t --name=c3 --dns-search=weave.local aanand/docker-dnsutils /bin/sh diff --git a/test/240_dns_add_name_test.sh b/test/240_dns_add_name_test.sh index 45697ec6..91548f22 100755 --- a/test/240_dns_add_name_test.sh +++ b/test/240_dns_add_name_test.sh @@ -11,7 +11,7 @@ start_suite "Add and remove names on a single host" weave_on $HOST1 launch-dns 10.2.254.1/24 -weave_on $HOST1 run $C2/24 -t --name=c2 gliderlabs/alpine /bin/sh +start_container $HOST1 $C2/24 --name=c2 weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh weave_on $HOST1 dns-add $C2 c2 -h $NAME2 diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index 347ff28a..43d8f385 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -13,7 +13,7 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 weave_on $HOST2 launch-dns 10.2.254.2/24 -weave_on $HOST2 run -t --name=c2 -h $NAME gliderlabs/alpine /bin/sh +start_container $HOST2 --name=c2 -h $NAME weave_on $HOST1 run --with-dns -t --name=c1 aanand/docker-dnsutils /bin/sh C2=$(container_ip $HOST2 c2) diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index b27b589f..247883df 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -44,7 +44,7 @@ weave_on $HOST1 launch weave_on $HOST1 launch-dns 10.254.254.254/24 # Run container with three cidrs -CID=$(weave_on $HOST1 run 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -t --name=multicidr -h multicidr.weave.local gliderlabs/alpine /bin/sh | cut -b 1-12) +CID=$(start_container $HOST1 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 --name=multicidr -h multicidr.weave.local | cut -b 1-12) assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.1.1 10.2.2.1 10.2.3.1 diff --git a/test/config.sh b/test/config.sh index e1109fa8..89fa8605 100644 --- a/test/config.sh +++ b/test/config.sh @@ -88,6 +88,12 @@ exec_on() { docker -H tcp://$host:2375 exec $container $@ } +start_container() { + host=$1 + shift 1 + weave_on $host run $@ -t gliderlabs/alpine /bin/sh +} + container_ip() { weave_on $1 ps $2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' } From c3c5b7600775d1729f4aaabb8c6c9eca01577409 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 20:50:02 +0100 Subject: [PATCH 10/15] use already-defined constants --- test/200_dns_test.sh | 2 +- test/230_dns_unqualified_test.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/200_dns_test.sh b/test/200_dns_test.sh index a43b1fc1..635308c9 100755 --- a/test/200_dns_test.sh +++ b/test/200_dns_test.sh @@ -15,6 +15,6 @@ weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/s assert_dns_record $HOST1 c1 $NAME $C2 -assert_raises "exec_on $HOST1 c1 dig MX seetwo.weave.local | grep -q \"status: NXDOMAIN\"" +assert_raises "exec_on $HOST1 c1 dig MX $NAME | grep -q \"status: NXDOMAIN\"" end_suite diff --git a/test/230_dns_unqualified_test.sh b/test/230_dns_unqualified_test.sh index 29181613..b76d2252 100755 --- a/test/230_dns_unqualified_test.sh +++ b/test/230_dns_unqualified_test.sh @@ -14,7 +14,7 @@ weave_on $HOST1 launch-dns 10.2.254.1/24 start_container $HOST1 $C1/24 --name=c1 -h $NAME weave_on $HOST1 run --with-dns $C2/24 -t --name=c2 -h seetwo.$DOMAIN aanand/docker-dnsutils /bin/sh -weave_on $HOST1 run --with-dns $C3/24 -t --name=c3 --dns-search=weave.local aanand/docker-dnsutils /bin/sh +weave_on $HOST1 run --with-dns $C3/24 -t --name=c3 --dns-search=$DOMAIN aanand/docker-dnsutils /bin/sh assert "exec_on $HOST1 c2 getent hosts seeone | tr -s ' '" "$C1 $NAME" assert "exec_on $HOST1 c3 getent hosts seeone | tr -s ' '" "$C1 $NAME" From 8261c7f7825bf967811a6a37bce0b7890deacf97 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 20:50:56 +0100 Subject: [PATCH 11/15] extract hostname as a constant --- test/500_weave_multi_cidr_test.sh | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index 247883df..6b882bcf 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -2,6 +2,8 @@ . ./config.sh +NAME=multicidr.weave.local + # assert_container_cidrs [ ...] assert_container_cidrs() { HOST=$1; shift @@ -44,25 +46,25 @@ weave_on $HOST1 launch weave_on $HOST1 launch-dns 10.254.254.254/24 # Run container with three cidrs -CID=$(start_container $HOST1 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 --name=multicidr -h multicidr.weave.local | cut -b 1-12) +CID=$(start_container $HOST1 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 --name=multicidr -h $NAME | cut -b 1-12) assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.1.1 10.2.2.1 10.2.3.1 +assert_zone_records $HOST1 $CID $NAME. 10.2.1.1 10.2.2.1 10.2.3.1 # Remove two of them weave_on $HOST1 detach 10.2.1.1/24 10.2.3.1/24 $CID assert_container_cidrs $HOST1 $CID 10.2.2.1/24 -assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.2.1 +assert_zone_records $HOST1 $CID $NAME. 10.2.2.1 # Put them both back weave_on $HOST1 attach 10.2.1.1/24 10.2.3.1/24 $CID assert_container_cidrs $HOST1 $CID 10.2.2.1/24 10.2.1.1/24 10.2.3.1/24 -assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.2.1 10.2.1.1 10.2.3.1 +assert_zone_records $HOST1 $CID $NAME. 10.2.2.1 10.2.1.1 10.2.3.1 # Stop the container, restart with three IPs docker_on $HOST1 stop $CID weave_on $HOST1 start 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 $CID assert_container_cidrs $HOST1 $CID 10.2.1.1/24 10.2.2.1/24 10.2.3.1/24 -assert_zone_records $HOST1 $CID multicidr.weave.local. 10.2.1.1 10.2.2.1 10.2.3.1 +assert_zone_records $HOST1 $CID $NAME. 10.2.1.1 10.2.2.1 10.2.3.1 # Expose some cidrs weave_on $HOST1 expose 10.2.1.2/24 10.2.2.2/24 10.2.3.2/24 From 4e7ddedf75a6f69b75c66ce2b8bb735c4eaa1dfc Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 20:58:27 +0100 Subject: [PATCH 12/15] extract startup of container with dns There is now just one mention of the aanand/docker-dnsutils image; in config.sh. --- test/200_dns_test.sh | 4 ++-- test/210_dns_multicast_test.sh | 4 ++-- test/220_dns_custom_test.sh | 4 ++-- test/230_dns_unqualified_test.sh | 6 +++--- test/240_dns_add_name_test.sh | 4 ++-- test/250_dns_ipam_test.sh | 4 ++-- test/300_fallback_dns_test.sh | 2 +- test/config.sh | 6 ++++++ 8 files changed, 20 insertions(+), 14 deletions(-) diff --git a/test/200_dns_test.sh b/test/200_dns_test.sh index 635308c9..c39305ee 100755 --- a/test/200_dns_test.sh +++ b/test/200_dns_test.sh @@ -10,8 +10,8 @@ start_suite "Resolve names on a single host" weave_on $HOST1 launch-dns 10.2.254.1/24 -start_container $HOST1 $C2/24 --name=c2 -h $NAME -weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container $HOST1 $C2/24 --name=c2 -h $NAME +start_container_with_dns $HOST1 $C1/24 --name=c1 assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/210_dns_multicast_test.sh b/test/210_dns_multicast_test.sh index 6e1886c9..0e71d0e3 100755 --- a/test/210_dns_multicast_test.sh +++ b/test/210_dns_multicast_test.sh @@ -14,8 +14,8 @@ weave_on $HOST2 launch $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 -debug weave_on $HOST2 launch-dns 10.2.254.2/24 -debug -start_container $HOST2 $C2/24 --name=c2 -h $NAME -weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container $HOST2 $C2/24 --name=c2 -h $NAME +start_container_with_dns $HOST1 $C1/24 --name=c1 assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/220_dns_custom_test.sh b/test/220_dns_custom_test.sh index 95546f2b..44f40231 100755 --- a/test/220_dns_custom_test.sh +++ b/test/220_dns_custom_test.sh @@ -11,8 +11,8 @@ start_suite "Resolve names in custom domain" weave_on $HOST1 launch-dns 10.2.254.1/24 --domain $DOMAIN. -start_container $HOST1 $C2/24 --name=c2 -h $NAME -weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container $HOST1 $C2/24 --name=c2 -h $NAME +start_container_with_dns $HOST1 $C1/24 --name=c1 assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/230_dns_unqualified_test.sh b/test/230_dns_unqualified_test.sh index b76d2252..574fef06 100755 --- a/test/230_dns_unqualified_test.sh +++ b/test/230_dns_unqualified_test.sh @@ -12,9 +12,9 @@ start_suite "Resolve unqualified names" weave_on $HOST1 launch-dns 10.2.254.1/24 -start_container $HOST1 $C1/24 --name=c1 -h $NAME -weave_on $HOST1 run --with-dns $C2/24 -t --name=c2 -h seetwo.$DOMAIN aanand/docker-dnsutils /bin/sh -weave_on $HOST1 run --with-dns $C3/24 -t --name=c3 --dns-search=$DOMAIN aanand/docker-dnsutils /bin/sh +start_container $HOST1 $C1/24 --name=c1 -h $NAME +start_container_with_dns $HOST1 $C2/24 --name=c2 -h seetwo.$DOMAIN +start_container_with_dns $HOST1 $C3/24 --name=c3 --dns-search=$DOMAIN assert "exec_on $HOST1 c2 getent hosts seeone | tr -s ' '" "$C1 $NAME" assert "exec_on $HOST1 c3 getent hosts seeone | tr -s ' '" "$C1 $NAME" diff --git a/test/240_dns_add_name_test.sh b/test/240_dns_add_name_test.sh index 91548f22..0377cb11 100755 --- a/test/240_dns_add_name_test.sh +++ b/test/240_dns_add_name_test.sh @@ -11,8 +11,8 @@ start_suite "Add and remove names on a single host" weave_on $HOST1 launch-dns 10.2.254.1/24 -start_container $HOST1 $C2/24 --name=c2 -weave_on $HOST1 run --with-dns $C1/24 -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container $HOST1 $C2/24 --name=c2 +start_container_with_dns $HOST1 $C1/24 --name=c1 weave_on $HOST1 dns-add $C2 c2 -h $NAME2 diff --git a/test/250_dns_ipam_test.sh b/test/250_dns_ipam_test.sh index 43d8f385..b8988a54 100755 --- a/test/250_dns_ipam_test.sh +++ b/test/250_dns_ipam_test.sh @@ -13,8 +13,8 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 weave_on $HOST1 launch-dns 10.2.254.1/24 weave_on $HOST2 launch-dns 10.2.254.2/24 -start_container $HOST2 --name=c2 -h $NAME -weave_on $HOST1 run --with-dns -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container $HOST2 --name=c2 -h $NAME +start_container_with_dns $HOST1 --name=c1 C2=$(container_ip $HOST2 c2) assert_dns_record $HOST1 c1 $NAME $C2 diff --git a/test/300_fallback_dns_test.sh b/test/300_fallback_dns_test.sh index f654b01b..b163aa77 100755 --- a/test/300_fallback_dns_test.sh +++ b/test/300_fallback_dns_test.sh @@ -6,7 +6,7 @@ start_suite "Resolve a non-weave address" weave_on $HOST1 launch-dns 10.2.254.1/24 -debug -weave_on $HOST1 run --with-dns 10.2.1.5/24 -t --name=c1 aanand/docker-dnsutils /bin/sh +start_container_with_dns $HOST1 10.2.1.5/24 --name=c1 assert_raises "exec_on $HOST1 c1 host -t mx weave.works | grep google" assert_raises "exec_on $HOST1 c1 getent hosts 8.8.8.8 | grep google" diff --git a/test/config.sh b/test/config.sh index 89fa8605..1646c6d5 100644 --- a/test/config.sh +++ b/test/config.sh @@ -94,6 +94,12 @@ start_container() { weave_on $host run $@ -t gliderlabs/alpine /bin/sh } +start_container_with_dns() { + host=$1 + shift 1 + weave_on $host run --with-dns $@ -t aanand/docker-dnsutils /bin/sh +} + container_ip() { weave_on $1 ps $2 | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' } From ccd468f80cdd3fa364bf8700a39de965c1fecd4a Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 21:05:39 +0100 Subject: [PATCH 13/15] drop -debug from launch-dns It wasn't being applied consistently in any case. --- test/210_dns_multicast_test.sh | 4 ++-- test/300_fallback_dns_test.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/210_dns_multicast_test.sh b/test/210_dns_multicast_test.sh index 0e71d0e3..ead67e95 100755 --- a/test/210_dns_multicast_test.sh +++ b/test/210_dns_multicast_test.sh @@ -11,8 +11,8 @@ start_suite "Resolve names across hosts" weave_on $HOST1 launch weave_on $HOST2 launch $HOST1 -weave_on $HOST1 launch-dns 10.2.254.1/24 -debug -weave_on $HOST2 launch-dns 10.2.254.2/24 -debug +weave_on $HOST1 launch-dns 10.2.254.1/24 +weave_on $HOST2 launch-dns 10.2.254.2/24 start_container $HOST2 $C2/24 --name=c2 -h $NAME start_container_with_dns $HOST1 $C1/24 --name=c1 diff --git a/test/300_fallback_dns_test.sh b/test/300_fallback_dns_test.sh index b163aa77..4f57f811 100755 --- a/test/300_fallback_dns_test.sh +++ b/test/300_fallback_dns_test.sh @@ -4,7 +4,7 @@ start_suite "Resolve a non-weave address" -weave_on $HOST1 launch-dns 10.2.254.1/24 -debug +weave_on $HOST1 launch-dns 10.2.254.1/24 start_container_with_dns $HOST1 10.2.1.5/24 --name=c1 From 6dd6d9d6f06367c8cac0c073bc9fddeb7780e5c9 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Sat, 16 May 2015 21:53:50 +0100 Subject: [PATCH 14/15] one ping to rule them all --- test/100_cross_hosts_test.sh | 2 +- test/110_encryption_test.sh | 2 +- test/120_ipam_test.sh | 2 +- test/130_expose_test.sh | 2 -- test/140_ipam_expose_test.sh | 2 -- test/config.sh | 2 ++ test/sanity_check.sh | 4 ++-- 7 files changed, 7 insertions(+), 9 deletions(-) diff --git a/test/100_cross_hosts_test.sh b/test/100_cross_hosts_test.sh index 9a5d535b..678b3f0e 100755 --- a/test/100_cross_hosts_test.sh +++ b/test/100_cross_hosts_test.sh @@ -12,6 +12,6 @@ weave_on $HOST2 launch $HOST1 start_container $HOST1 $C1/24 --name=c1 start_container $HOST2 $C2/24 --name=c2 -assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" +assert_raises "exec_on $HOST1 c1 $PING $C2" end_suite diff --git a/test/110_encryption_test.sh b/test/110_encryption_test.sh index 0f16aaa6..967e0003 100755 --- a/test/110_encryption_test.sh +++ b/test/110_encryption_test.sh @@ -12,6 +12,6 @@ weave_on $HOST2 launch -password notverysecure $HOST1 start_container $HOST1 $C1/24 --name=c1 start_container $HOST2 $C2/24 --name=c2 -assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" +assert_raises "exec_on $HOST1 c1 $PING $C2" end_suite diff --git a/test/120_ipam_test.sh b/test/120_ipam_test.sh index 23be4c1a..efd7c804 100755 --- a/test/120_ipam_test.sh +++ b/test/120_ipam_test.sh @@ -12,6 +12,6 @@ weave_on $HOST2 launch -iprange $UNIVERSE $HOST1 start_container $HOST1 --name=c1 start_container $HOST2 --name=c2 C2=$(container_ip $HOST2 c2) -assert_raises "exec_on $HOST1 c1 ping -q -c 4 $C2" +assert_raises "exec_on $HOST1 c1 $PING $C2" end_suite diff --git a/test/130_expose_test.sh b/test/130_expose_test.sh index 1984c76f..cacc3dfd 100755 --- a/test/130_expose_test.sh +++ b/test/130_expose_test.sh @@ -8,8 +8,6 @@ C3=10.2.2.34 C4=10.2.2.37 EXP=10.2.1.101 -PING="ping -nq -W 1 -c 1" - weave_on1() { assert_raises "weave_on $HOST1 $@" } diff --git a/test/140_ipam_expose_test.sh b/test/140_ipam_expose_test.sh index a1176068..11b40994 100755 --- a/test/140_ipam_expose_test.sh +++ b/test/140_ipam_expose_test.sh @@ -6,8 +6,6 @@ R1=10.2.1.0/24 C3=10.2.2.34 C4=10.2.2.37 -PING="ping -nq -W 1 -c 1" - weave_on1() { assert_raises "weave_on $HOST1 $@" } diff --git a/test/config.sh b/test/config.sh index 1646c6d5..547bedd7 100644 --- a/test/config.sh +++ b/test/config.sh @@ -29,6 +29,8 @@ HOST2=$(echo $HOSTS | cut -f 2 -d ' ') SSH=${SSH:-ssh -l vagrant -i ./insecure_private_key -o UserKnownHostsFile=./.ssh_known_hosts -o CheckHostIP=no -o StrictHostKeyChecking=no} +PING="ping -nq -W 1 -c 1" + remote() { rem=$1 shift 1 diff --git a/test/sanity_check.sh b/test/sanity_check.sh index ed633070..a003f570 100755 --- a/test/sanity_check.sh +++ b/test/sanity_check.sh @@ -5,8 +5,8 @@ set -e whitely echo Ping each host from the other -run_on $HOST2 ping -q -c 4 $HOST1 -run_on $HOST1 ping -q -c 4 $HOST2 +run_on $HOST2 $PING $HOST1 +run_on $HOST1 $PING $HOST2 whitely echo Check we can reach docker docker_on $HOST1 info From c08bfd220589100765566ab014cac454c387acbf Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Mon, 18 May 2015 11:16:12 +0100 Subject: [PATCH 15/15] always quote $@ --- test/500_weave_multi_cidr_test.sh | 6 +++--- test/config.sh | 16 ++++++++-------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/test/500_weave_multi_cidr_test.sh b/test/500_weave_multi_cidr_test.sh index 6b882bcf..4e3edf32 100755 --- a/test/500_weave_multi_cidr_test.sh +++ b/test/500_weave_multi_cidr_test.sh @@ -8,7 +8,7 @@ NAME=multicidr.weave.local assert_container_cidrs() { HOST=$1; shift CID=$1; shift - CIDRS=$@ + CIDRS="$@" # Assert container has attached CIDRs assert_raises "weave_on $HOST ps | grep \"^$CID [^ ]* $CIDRS$\"" @@ -24,7 +24,7 @@ assert_zone_records() { assert "weave_on $HOST status | grep \"^$CID\" | wc -l" $# # Assert correct records exist - for IP in $@; do + for IP; do assert_raises "weave_on $HOST status | grep \"^$CID $IP $FQDN$\"" done } @@ -33,7 +33,7 @@ assert_zone_records() { assert_bridge_cidrs() { HOST=$1; shift DEV=$1; shift - CIDRS=$@ + CIDRS="$@" BRIDGE_CIDRS=$($SSH $HOST ip addr show dev $DEV | grep -o 'inet .*' | cut -d ' ' -f 2) diff --git a/test/config.sh b/test/config.sh index 547bedd7..3983c826 100644 --- a/test/config.sh +++ b/test/config.sh @@ -34,7 +34,7 @@ PING="ping -nq -W 1 -c 1" remote() { rem=$1 shift 1 - $@ > >(while read line; do echo -e "\e[0;34m$rem>\e[0m $line"; done) + "$@" > >(while read line; do echo -e "\e[0;34m$rem>\e[0m $line"; done) } colourise() { @@ -66,40 +66,40 @@ run_on() { host=$1 shift 1 greyly echo "Running on $host: $@" >&2 - remote $host $SSH $host $@ + remote $host $SSH $host "$@" } docker_on() { host=$1 shift 1 greyly echo "Docker on $host: $@" >&2 - docker -H tcp://$host:2375 $@ + docker -H tcp://$host:2375 "$@" } weave_on() { host=$1 shift 1 greyly echo "Weave on $host: $@" >&2 - DOCKER_HOST=tcp://$host:2375 $WEAVE $@ + DOCKER_HOST=tcp://$host:2375 $WEAVE "$@" } exec_on() { host=$1 container=$2 shift 2 - docker -H tcp://$host:2375 exec $container $@ + docker -H tcp://$host:2375 exec $container "$@" } start_container() { host=$1 shift 1 - weave_on $host run $@ -t gliderlabs/alpine /bin/sh + weave_on $host run "$@" -t gliderlabs/alpine /bin/sh } start_container_with_dns() { host=$1 shift 1 - weave_on $host run --with-dns $@ -t aanand/docker-dnsutils /bin/sh + weave_on $host run --with-dns "$@" -t aanand/docker-dnsutils /bin/sh } container_ip() { @@ -119,7 +119,7 @@ start_suite() { [ -n "$containers" ] && docker_on $host rm -f $containers >/dev/null 2>&1 weave_on $host reset 2>/dev/null done - whitely echo $@ + whitely echo "$@" } end_suite() {