62 lines
1.0 KiB
Bash
Executable File
62 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT="$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)"
|
|
FILE="$ROOT/ocf/loxthelion/managed-container.d/applications/postgresql/native_peers.sh"
|
|
FAKE="$(mktemp)"
|
|
|
|
cleanup()
|
|
{
|
|
rm -f "$FAKE"
|
|
}
|
|
|
|
trap cleanup EXIT
|
|
|
|
ocf_log()
|
|
{
|
|
:
|
|
}
|
|
|
|
export OCF_RESOURCE_INSTANCE=postgresql-ha
|
|
export MC_PROXY_CLIENT="$FAKE"
|
|
|
|
cat > "$FAKE" <<'EOF'
|
|
import json
|
|
print(json.dumps({
|
|
"ocf_rc": 1,
|
|
"ready": False,
|
|
"mutation": False,
|
|
}))
|
|
EOF
|
|
chmod 0755 "$FAKE"
|
|
|
|
# shellcheck disable=SC1090
|
|
. "$FILE"
|
|
|
|
unset MC_DEMOTE_DATABASE_GATE
|
|
mc_pg_demote_database_shadow
|
|
|
|
export MC_DEMOTE_DATABASE_GATE=true
|
|
|
|
if mc_pg_demote_database_shadow; then
|
|
echo "FAIL: mismatch was not gated"
|
|
exit 1
|
|
fi
|
|
|
|
cat > "$FAKE" <<'EOF'
|
|
raise SystemExit(10)
|
|
EOF
|
|
chmod 0755 "$FAKE"
|
|
|
|
unset MC_DEMOTE_DATABASE_GATE
|
|
mc_pg_demote_database_shadow
|
|
|
|
export MC_DEMOTE_DATABASE_GATE=true
|
|
|
|
if mc_pg_demote_database_shadow; then
|
|
echo "FAIL: transport failure was not gated"
|
|
exit 1
|
|
fi
|
|
|
|
echo "DEMOTE_DATABASE_GATE_RUNTIME_TEST_PASS=1"
|