summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2019-12-10 11:33:02 +1100
committerMartin Schwenke <martins@samba.org>2020-07-22 07:53:36 +0000
commit41ff58338a0b36dfccc19579c8edfa5939cd5978 (patch)
treea711dbbbed71c1584f8b2782842f1793ad109f7e
parentce3de3989470d186ce73e6e74aa7f16111e2a6fa (diff)
downloadsamba-41ff58338a0b36dfccc19579c8edfa5939cd5978.tar.gz
ctdb-tests: Drop uses of "onnode any ..." in testcases
It would be nice to get rid of "onnode any". There's no use making tests nondeterministic. If covering different cases matters then they should be explicitly handled. In most places "any" is replaced by "$test_node". In some cases, where $test_node is not set, a fixed node that is already used elsewhere can be reused. Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Amitay Isaacs <amitay@gmail.com>
-rwxr-xr-xctdb/tests/CLUSTER/complex/18_ctdb_reloadips.sh8
-rwxr-xr-xctdb/tests/CLUSTER/complex/31_nfs_tickle.sh9
-rwxr-xr-xctdb/tests/CLUSTER/complex/34_nfs_tickle_restart.sh5
-rwxr-xr-xctdb/tests/INTEGRATION/database/readonly.001.basic.sh2
-rwxr-xr-xctdb/tests/INTEGRATION/database/recovery.001.volatile.sh4
-rwxr-xr-xctdb/tests/INTEGRATION/failover/pubips.012.reloadips.sh6
-rwxr-xr-xctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh9
-rwxr-xr-xctdb/tests/INTEGRATION/failover/pubips.020.moveip.sh5
8 files changed, 25 insertions, 23 deletions
diff --git a/ctdb/tests/CLUSTER/complex/18_ctdb_reloadips.sh b/ctdb/tests/CLUSTER/complex/18_ctdb_reloadips.sh
index f4df2b1b08b..150aeea5f14 100755
--- a/ctdb/tests/CLUSTER/complex/18_ctdb_reloadips.sh
+++ b/ctdb/tests/CLUSTER/complex/18_ctdb_reloadips.sh
@@ -38,7 +38,7 @@ select_test_node_and_ips
# the provided prefix. Note that this is an IPv4-specific test.
echo "Getting public IP information from CTDB..."
-try_command_on_node any "$CTDB ip -X -v all"
+ctdb_onnode "$test_node" "ip -X -v all"
ctdb_ip_info=$(awk -F'|' 'NR > 1 { print $2, $3, $5 }' "$outfile")
echo "Getting IP information from interfaces..."
@@ -215,7 +215,7 @@ do_ctdb_reloadips
check_ips $test_node "$iface" "$prefix" 1 $new_ip_max
-try_command_on_node any $CTDB sync
+ctdb_onnode "$test_node" sync
####################
@@ -229,7 +229,7 @@ do_ctdb_reloadips
check_ips $test_node "$iface" "$prefix" 2 $new_ip_max
-try_command_on_node any $CTDB sync
+ctdb_onnode "$test_node" sync
####################
@@ -244,7 +244,7 @@ do_ctdb_reloadips
check_ips $test_node "$iface" "$prefix" $start $new_ip_max
-try_command_on_node any $CTDB sync
+ctdb_onnode "$test_node" sync
####################
diff --git a/ctdb/tests/CLUSTER/complex/31_nfs_tickle.sh b/ctdb/tests/CLUSTER/complex/31_nfs_tickle.sh
index e3c362c347a..e3f1540aedb 100755
--- a/ctdb/tests/CLUSTER/complex/31_nfs_tickle.sh
+++ b/ctdb/tests/CLUSTER/complex/31_nfs_tickle.sh
@@ -29,15 +29,14 @@ set -e
ctdb_test_init
-# We need this for later, so we know how long to run nc for.
-try_command_on_node any $CTDB getvar MonitorInterval
-monitor_interval="${out#*= }"
-#echo "Monitor interval on node $test_node is $monitor_interval seconds."
-
select_test_node_and_ips
try_command_on_node $test_node "$CTDB listnodes | wc -l"
numnodes="$out"
+# We need this for later, so we know how long to run nc for.
+ctdb_onnode "$test_node" "getvar MonitorInterval"
+monitor_interval="${out#*= }"
+
test_port=2049
echo "Connecting to node ${test_node} on IP ${test_ip}:${test_port} with netcat..."
diff --git a/ctdb/tests/CLUSTER/complex/34_nfs_tickle_restart.sh b/ctdb/tests/CLUSTER/complex/34_nfs_tickle_restart.sh
index 5ab8a34faec..b81510d3722 100755
--- a/ctdb/tests/CLUSTER/complex/34_nfs_tickle_restart.sh
+++ b/ctdb/tests/CLUSTER/complex/34_nfs_tickle_restart.sh
@@ -27,11 +27,6 @@ set -e
ctdb_test_init
-# We need this for later, so we know how long to run nc for.
-try_command_on_node any $CTDB getvar MonitorInterval
-monitor_interval="${out#*= }"
-#echo "Monitor interval on node $test_node is $monitor_interval seconds."
-
select_test_node_and_ips
try_command_on_node $test_node "$CTDB listnodes -X"
listnodes_output="$out"
diff --git a/ctdb/tests/INTEGRATION/database/readonly.001.basic.sh b/ctdb/tests/INTEGRATION/database/readonly.001.basic.sh
index 20faa3aa03b..aeb974028e6 100755
--- a/ctdb/tests/INTEGRATION/database/readonly.001.basic.sh
+++ b/ctdb/tests/INTEGRATION/database/readonly.001.basic.sh
@@ -92,7 +92,7 @@ check_readonly ()
######################################################################
echo "Get list of nodes..."
-try_command_on_node any $CTDB -X listnodes
+ctdb_onnode 0 "-X listnodes"
all_nodes=$(awk -F'|' '{print $2}' "$outfile")
######################################################################
diff --git a/ctdb/tests/INTEGRATION/database/recovery.001.volatile.sh b/ctdb/tests/INTEGRATION/database/recovery.001.volatile.sh
index e523e835de7..ffe322037f5 100755
--- a/ctdb/tests/INTEGRATION/database/recovery.001.volatile.sh
+++ b/ctdb/tests/INTEGRATION/database/recovery.001.volatile.sh
@@ -38,7 +38,7 @@ status=0
# Make sure node 0 is not the recovery master
echo "find out which node is recmaster"
-try_command_on_node any $CTDB recmaster
+ctdb_onnode 0 recmaster
recmaster="$out"
if [ "$recmaster" = "0" ]; then
echo "node 0 is recmaster, disable recmasterrole on node 0"
@@ -56,7 +56,7 @@ if [ "$recmaster" = "0" ]; then
try_command_on_node 0 $CTDB continue
wait_until_node_has_status 0 notstopped
- try_command_on_node any $CTDB recmaster
+ ctdb_onnode 0 recmaster
recmaster="$out"
if [ "$recmaster" = "0" ]; then
echo "failed to move recmaster to different node"
diff --git a/ctdb/tests/INTEGRATION/failover/pubips.012.reloadips.sh b/ctdb/tests/INTEGRATION/failover/pubips.012.reloadips.sh
index 829b83930da..a3bb3af6480 100755
--- a/ctdb/tests/INTEGRATION/failover/pubips.012.reloadips.sh
+++ b/ctdb/tests/INTEGRATION/failover/pubips.012.reloadips.sh
@@ -33,7 +33,7 @@ do_ctdb_reloadips ()
local retry_max=10
local retry_count=0
while : ; do
- if try_command_on_node any "$CTDB reloadips all" ; then
+ if ctdb_onnode "$test_node" "reloadips all" ; then
return 0
fi
@@ -73,7 +73,7 @@ GOOD: node $test_node is no longer hosting IP $test_ip:
$out
EOF
-try_command_on_node any $CTDB sync
+ctdb_onnode "$test_node" sync
echo "Restoring addresses"
@@ -94,7 +94,7 @@ GOOD: node $test_node has these addresses:
$out
EOF
-try_command_on_node any $CTDB sync
+ctdb_onnode "$test_node" sync
echo "Emptying public addresses file on $test_node"
diff --git a/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh b/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh
index 488243d6260..77f9a63e589 100755
--- a/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh
+++ b/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh
@@ -16,8 +16,13 @@ ctdb_test_init -n
echo "Starting CTDB with failover disabled..."
ctdb_nodes_start_custom -F
+select_test_node
+
echo "Getting IP allocation..."
-try_command_on_node -v any "$CTDB ip all | tail -n +2"
+
+# $test_node set above by select_test_node()
+# shellcheck disable=SC2154
+try_command_on_node -v "$test_node" "$CTDB ip all | tail -n +2"
while read ip pnn ; do
if [ "$pnn" != "-1" ] ; then
@@ -33,7 +38,7 @@ echo "Starting CTDB with an empty public addresses configuration..."
ctdb_nodes_start_custom -P /dev/null
echo "Trying explicit ipreallocate..."
-try_command_on_node any $CTDB ipreallocate
+ctdb_onnode "$test_node" ipreallocate
echo "Good, that seems to work!"
echo
diff --git a/ctdb/tests/INTEGRATION/failover/pubips.020.moveip.sh b/ctdb/tests/INTEGRATION/failover/pubips.020.moveip.sh
index 68b5e079d66..8daf3f51674 100755
--- a/ctdb/tests/INTEGRATION/failover/pubips.020.moveip.sh
+++ b/ctdb/tests/INTEGRATION/failover/pubips.020.moveip.sh
@@ -40,7 +40,10 @@ sanity_check_ips ()
sanity_check_ips
# Find a target node - it must be willing to host $test_ip
-try_command_on_node any "$CTDB listnodes | wc -l"
+
+# $test_node set above by select_test_node_and_ips()
+# shellcheck disable=SC2154
+try_command_on_node "$test_node" "$CTDB listnodes | wc -l"
num_nodes="$out"
to_node=""
for i in $(seq 0 $(($num_nodes - 1)) ) ; do