33 lines
1.1 KiB
Bash
Executable File
33 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -Eeuo pipefail
|
|
|
|
CONFIG="${1:-/etc/aios-orchestrator-gateway/config.json}"
|
|
PORT="${PORT:-18920}"
|
|
|
|
python3 -m json.tool "$CONFIG" >/dev/null
|
|
systemd-analyze verify \
|
|
/etc/systemd/system/aios-orchestrator-gateway.service \
|
|
/etc/systemd/system/aios-orchestrator-gateway-poll.service \
|
|
/etc/systemd/system/aios-orchestrator-gateway-poll.timer
|
|
systemctl is-active --quiet aios-orchestrator-gateway.service
|
|
systemctl is-active --quiet aios-orchestrator-gateway-poll.timer
|
|
|
|
health="$(curl --fail --silent --show-error "http://127.0.0.1:${PORT}/healthz")"
|
|
python3 -c '
|
|
import json, sys
|
|
v=json.load(sys.stdin)
|
|
assert v["service"]=="aios-orchestrator-gateway"
|
|
assert v["status"]=="active"
|
|
assert v["polling"] is True
|
|
assert len(v["contract_commit"])==40
|
|
' <<<"$health"
|
|
|
|
systemctl start aios-orchestrator-gateway-poll.service
|
|
if journalctl -u aios-orchestrator-gateway.service -n 200 --no-pager \
|
|
| grep -Eqi 'Bearer |token=|api[_-]?key|secret='; then
|
|
echo "AIOS_ORCHESTRATOR_VERIFY=BLOCKED reason=SECRET_PATTERN_IN_LOG" >&2
|
|
exit 2
|
|
fi
|
|
|
|
echo "AIOS_ORCHESTRATOR_VERIFY=PASS"
|