update
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
set -u -o pipefail
|
||||
|
||||
TEST_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
source "${TEST_ROOT}/tests/testlib.sh"
|
||||
source "${TEST_ROOT}/inc/ha-status.inc"
|
||||
|
||||
STATUS_FILE="$(mktemp /tmp/tapm-ha-status.XXXXXX)"
|
||||
cleanup_ha_status_test() {
|
||||
[[ "$STATUS_FILE" == /tmp/tapm-ha-status.* ]] && rm -f -- "$STATUS_FILE"
|
||||
}
|
||||
trap cleanup_ha_status_test EXIT
|
||||
|
||||
printf '%s\n' \
|
||||
'{"node_status":{"pve1":"online","pve2":"maintenance mode"}}' \
|
||||
>"$STATUS_FILE"
|
||||
assert_success "maintenance node detected in HA manager state" \
|
||||
TAPM_HA_NODE_IN_MAINTENANCE pve2 "$STATUS_FILE"
|
||||
assert_failure "active node is not reported as maintenance" \
|
||||
TAPM_HA_NODE_IN_MAINTENANCE pve1 "$STATUS_FILE"
|
||||
|
||||
printf '%s\n' \
|
||||
'{"nodes":[{"node":"pve3","state":"maintenance"}]}' \
|
||||
>"$STATUS_FILE"
|
||||
assert_success "structured HA node state detected" \
|
||||
TAPM_HA_NODE_IN_MAINTENANCE pve3 "$STATUS_FILE"
|
||||
|
||||
printf '%s\n' 'not-json' >"$STATUS_FILE"
|
||||
assert_failure "malformed HA state is rejected" \
|
||||
TAPM_HA_NODE_IN_MAINTENANCE pve1 "$STATUS_FILE"
|
||||
|
||||
finish_tests
|
||||
Reference in New Issue
Block a user