diff options
author | Martin Schwenke <martin@meltin.net> | 2022-01-14 21:47:52 +1100 |
---|---|---|
committer | Martin Schwenke <martins@samba.org> | 2022-01-17 10:21:33 +0000 |
commit | 403db5b52882c91f35ae189bcf8f01f8180c7b50 (patch) | |
tree | a4d20ef4caff1df2bc49879721e1049d757efca3 /ctdb/tests/scripts/integration.bash | |
parent | 4786982cc80f4ec0c23673a144ac179fa60bde78 (diff) | |
download | samba-403db5b52882c91f35ae189bcf8f01f8180c7b50.tar.gz |
ctdb-tests: Factor out getting leader and waiting for leader change
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Diffstat (limited to 'ctdb/tests/scripts/integration.bash')
-rw-r--r-- | ctdb/tests/scripts/integration.bash | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/ctdb/tests/scripts/integration.bash b/ctdb/tests/scripts/integration.bash index cff2903b339..c9457aaf850 100644 --- a/ctdb/tests/scripts/integration.bash +++ b/ctdb/tests/scripts/integration.bash @@ -644,6 +644,50 @@ ctdb_base_show () ####################################### +# sets: leader +_leader_get () +{ + local node="$1" + + ctdb_onnode "$node" recmaster + # shellcheck disable=SC2154 + # $out set by ctdb_onnode() above + leader="$out" +} + +leader_get () +{ + local node="$1" + + echo "Get leader" + _leader_get "$node" + echo "Leader is ${leader}" + echo +} + +_leader_has_changed () +{ + local node="$1" + local leader_old="$2" + + _leader_get "$node" + + [ "$leader" != "$leader_old" ] +} + +# uses: leader +wait_until_leader_has_changed () +{ + local node="$1" + + echo + echo "Wait until leader changes..." + wait_until 30 _leader_has_changed "$node" "$leader" + echo "Leader changed to ${leader}" +} + +####################################### + wait_for_monitor_event () { local pnn="$1" |