diff options
| author | yyamashita <yyamashita@hetzner.yyamashita.com> | 2026-10-31 13:20:27 +0900 |
|---|---|---|
| committer | yyamashita <yyamashita@hetzner.yyamashita.com> | 2026-10-31 13:20:27 +0900 |
| commit | b4ecef96fae14a92d12279927986e69c2e223180 (patch) | |
| tree | 822b448e7544aa197a9db6efc43f2ddb875eae55 /tests | |
| parent | 5a55c7893615c5a64856ecca681325a609d1fac0 (diff) | |
Add status pages, ntfy alerts, and license-slot-checker repo
- status/: lightweight status checker (status.yyamashita.com, /api/status)
with ntfy DOWN/recovered alerts after consecutive failures
- uptime-kuma/: Uptime Kuma at uptime.yyamashita.com
- hetzner-admin: authenticated /status page (status-app results + docker ps -a)
- ntfy/: self-hosted ntfy at ntfy.yyamashita.com (deny-all auth, install.sh
creates admin user and status-app token)
- Caddyfile, DNS, post-receive hook, tests/check.sh, docs updated
- license-slot-checker: add to repos.txt, hook, and Claude sessions
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'tests')
| -rwxr-xr-x | tests/check.sh | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tests/check.sh b/tests/check.sh index 99add68..85d19e5 100755 --- a/tests/check.sh +++ b/tests/check.sh @@ -27,7 +27,7 @@ done < <(find git/hooks -type f -name 'post-receive' | sort) echo "" echo "=== Python 構文 ===" -for f in hetzner-admin/app.py mail/dns/setup-route53.py; do +for f in hetzner-admin/app.py mail/dns/setup-route53.py status/app.py; do if python3 -m py_compile "$f" 2>/dev/null; then ok "$f" else @@ -67,7 +67,7 @@ while IFS=: read -r user repo; do done < claude/sessions.txt echo "" -echo "=== hetzner-admin: app.py の COMMANDS が run-command.sh で許可されているか ===" +echo "=== hetzner-admin: app.py の COMMANDS / STATUS_COMMAND が run-command.sh で許可されているか ===" while IFS= read -r cmd; do if grep -qF "\"$cmd\")" hetzner-admin/run-command.sh; then ok "$cmd" @@ -81,6 +81,8 @@ for node in ast.walk(tree): if isinstance(node, ast.Assign) and getattr(node.targets[0], "id", "") == "COMMANDS": for elt in node.value.elts: print(elt.elts[1].value) + if isinstance(node, ast.Assign) and getattr(node.targets[0], "id", "") == "STATUS_COMMAND": + print(node.value.value) EOF ) |
