monitoring: find SECRETS_ROOT for e2e bank admin password
This commit is contained in:
parent
329222f99d
commit
bf8a915a01
3 changed files with 99 additions and 9 deletions
|
|
@ -758,25 +758,84 @@ PY
|
|||
done <<<"$list"
|
||||
}
|
||||
|
||||
# Live bank/merchant passwords: sibling **koopa-admin-secrets** (never in admin-log).
|
||||
# Override: SECRETS_ROOT=/path/to/koopa-admin-secrets/koopa/host-root
|
||||
# or KOOPA_ADMIN_SECRETS=/path/to/koopa-admin-secrets
|
||||
SECRETS_ROOT="${SECRETS_ROOT:-}"
|
||||
_secrets_search_log() { :; } # placeholder if we later want debug
|
||||
if [ -z "$SECRETS_ROOT" ]; then
|
||||
_mon_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
_admin_log="$(cd "${_mon_dir}/../.." && pwd)"
|
||||
# Prefer explicit env pointing at the secrets *repo* root
|
||||
if [ -n "${KOOPA_ADMIN_SECRETS:-}" ] && [ -d "${KOOPA_ADMIN_SECRETS}/koopa/host-root/taler-bank" ]; then
|
||||
SECRETS_ROOT="${KOOPA_ADMIN_SECRETS}/koopa/host-root"
|
||||
fi
|
||||
fi
|
||||
if [ -z "$SECRETS_ROOT" ]; then
|
||||
_mon_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
_admin_log="$(cd "${_mon_dir}/../.." && pwd)"
|
||||
for d in \
|
||||
"$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd)/koopa-admin-secrets/koopa/host-root" \
|
||||
"${_admin_log}/../koopa-admin-secrets/koopa/host-root" \
|
||||
"${_admin_log}/../../koopa-admin-secrets/koopa/host-root" \
|
||||
"${HOME}/taler/src/koopa-admin-secrets/koopa/host-root" \
|
||||
"${HOME}/src/koopa/koopa-admin-secrets/koopa/host-root" \
|
||||
"${HOME}/koopa-admin-secrets/koopa/host-root" \
|
||||
"/Users/newkamek/src/koopa/koopa-admin-secrets/koopa/host-root" \
|
||||
"$HOME/src/koopa/koopa-admin-secrets/koopa/host-root"
|
||||
"$(cd "${_admin_log}/../.." 2>/dev/null && pwd)/koopa-admin-secrets/koopa/host-root"
|
||||
do
|
||||
if [ -d "$d/taler-bank" ]; then SECRETS_ROOT=$d; break; fi
|
||||
# resolve .. without requiring the dir to exist first for cd
|
||||
if [ -d "$d/taler-bank" ]; then
|
||||
SECRETS_ROOT=$(cd "$d" && pwd)
|
||||
break
|
||||
fi
|
||||
done
|
||||
unset _mon_dir _admin_log d
|
||||
fi
|
||||
|
||||
read_secret() {
|
||||
local rel="$1"
|
||||
if [ -n "${SECRETS_ROOT:-}" ] && [ -f "${SECRETS_ROOT}/${rel}" ]; then
|
||||
tr -d '\n' <"${SECRETS_ROOT}/${rel}"
|
||||
local rel="$1" base val=""
|
||||
base=$(basename "$rel")
|
||||
if [ -n "${SECRETS_ROOT:-}" ]; then
|
||||
if [ -f "${SECRETS_ROOT}/${rel}" ]; then
|
||||
tr -d '\n\r' <"${SECRETS_ROOT}/${rel}"
|
||||
return 0
|
||||
fi
|
||||
# also accept flat layout under host-root/
|
||||
if [ -f "${SECRETS_ROOT}/${base}" ]; then
|
||||
tr -d '\n\r' <"${SECRETS_ROOT}/${base}"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
# Optional: copy under ~/.config/taler-landing/ (landing-stats style)
|
||||
if [ -f "${HOME}/.config/taler-landing/${base}" ]; then
|
||||
tr -d '\n\r' <"${HOME}/.config/taler-landing/${base}"
|
||||
return 0
|
||||
fi
|
||||
koopa_ssh_ok || return 1
|
||||
koopa_ssh_run 10 "tr -d '\\n' </root/$(basename "$rel") 2>/dev/null || true" 2>/dev/null
|
||||
# Live on koopa host /root (same basenames as deploy)
|
||||
if koopa_ssh_ok; then
|
||||
val=$(koopa_ssh_run 12 "tr -d '\\n\\r' </root/${base} 2>/dev/null || true" 2>/dev/null || true)
|
||||
if [ -n "$val" ]; then
|
||||
printf '%s' "$val"
|
||||
return 0
|
||||
fi
|
||||
# container path used by some installs
|
||||
val=$(koopa_ssh_run 12 \
|
||||
"podman exec taler-hacktivism-bank tr -d '\\n\\r' </root/${base} 2>/dev/null || true" 2>/dev/null || true)
|
||||
if [ -n "$val" ]; then
|
||||
printf '%s' "$val"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
return 1
|
||||
}
|
||||
|
||||
# Human hint when secrets missing (e2e prereq)
|
||||
secrets_hint() {
|
||||
cat <<EOF
|
||||
Set SECRETS_ROOT to koopa-admin-secrets/koopa/host-root (contains taler-bank/),
|
||||
or KOOPA_ADMIN_SECRETS to the secrets repo root, or export E2E_BANK_ADMIN_PASS.
|
||||
Example (this machine): SECRETS_ROOT=\$HOME/taler/src/koopa-admin-secrets/koopa/host-root
|
||||
EOF
|
||||
}
|
||||
|
||||
find_wallet_cli() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue