diff --git a/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh b/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh index 1c13a3ce3c2..488243d6260 100755 --- a/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh +++ b/ctdb/tests/INTEGRATION/failover/pubips.013.failover_noop.sh @@ -11,10 +11,10 @@ set -e ctdb_test_skip_on_cluster -echo "Starting CTDB with failover disabled..." -ctdb_test_init -F +ctdb_test_init -n -cluster_is_healthy +echo "Starting CTDB with failover disabled..." +ctdb_nodes_start_custom -F echo "Getting IP allocation..." try_command_on_node -v any "$CTDB ip all | tail -n +2" @@ -30,9 +30,7 @@ echo "GOOD: All IP addresses are unassigned" echo "----------------------------------------" echo "Starting CTDB with an empty public addresses configuration..." -ctdb_test_init -P /dev/null - -cluster_is_healthy +ctdb_nodes_start_custom -P /dev/null echo "Trying explicit ipreallocate..." try_command_on_node any $CTDB ipreallocate diff --git a/ctdb/tests/INTEGRATION/simple/cluster.012.reclock_command.sh b/ctdb/tests/INTEGRATION/simple/cluster.012.reclock_command.sh index 76be340d7cb..d043c7e2615 100755 --- a/ctdb/tests/INTEGRATION/simple/cluster.012.reclock_command.sh +++ b/ctdb/tests/INTEGRATION/simple/cluster.012.reclock_command.sh @@ -12,9 +12,9 @@ set -e ctdb_test_skip_on_cluster -echo "Starting CTDB with recovery lock command configured..." -ctdb_test_init -R +ctdb_test_init -n -cluster_is_healthy +echo "Starting CTDB with recovery lock command configured..." +ctdb_nodes_start_custom -R echo "Good, that seems to work!" diff --git a/ctdb/tests/INTEGRATION/simple/eventscripts.001.zero_scripts.sh b/ctdb/tests/INTEGRATION/simple/eventscripts.001.zero_scripts.sh index fb1d031e982..4fdf61cee2d 100755 --- a/ctdb/tests/INTEGRATION/simple/eventscripts.001.zero_scripts.sh +++ b/ctdb/tests/INTEGRATION/simple/eventscripts.001.zero_scripts.sh @@ -9,8 +9,8 @@ set -e ctdb_test_skip_on_cluster -ctdb_test_init --no-event-scripts +ctdb_test_init -n -cluster_is_healthy +ctdb_nodes_start_custom --no-event-scripts echo "Good, that seems to work!" diff --git a/ctdb/tests/scripts/integration.bash b/ctdb/tests/scripts/integration.bash index 61372a44b60..b868f683656 100644 --- a/ctdb/tests/scripts/integration.bash +++ b/ctdb/tests/scripts/integration.bash @@ -88,19 +88,37 @@ ctdb_test_cleanup_pid_clear () ctdb_test_cleanup_pid="" } +# -n option means do not configure/start cluster ctdb_test_init () { trap "ctdb_test_exit" 0 ctdb_nodes_stop >/dev/null 2>&1 || true + if [ "$1" != "-n" ] ; then + echo "Configuring cluster..." + setup_ctdb || ctdb_test_error "Cluster configuration failed" + + echo "Starting cluster..." + ctdb_init || ctdb_test_error "Cluster startup failed" + fi + + echo "*** SETUP COMPLETE AT $(date '+%F %T'), RUNNING TEST..." +} + +ctdb_nodes_start_custom () +{ + if ctdb_test_on_cluster ; then + ctdb_test_error "ctdb_nodes_start_custom() on real cluster" + fi + + ctdb_nodes_stop >/dev/null 2>&1 || true + echo "Configuring cluster..." setup_ctdb "$@" || ctdb_test_error "Cluster configuration failed" echo "Starting cluster..." - ctdb_init || ctdb_test_error "Cluster startup failed" - - echo "*** SETUP COMPLETE AT $(date '+%F %T'), RUNNING TEST..." + ctdb_init || ctdb_test_fail "Cluster startup failed" } ctdb_test_skip_on_cluster ()