vps-health-api/CLAUDE.md
le king fu 9510e96231 docs: warn HEALTH_TOKEN must be runtime-only on Coolify
Add inline warning in .env.example and CLAUDE.md Auth section:
HEALTH_TOKEN is read at runtime only — passing it as Coolify build ARG
leaks the secret in clear in application_deployment_queues.logs.

Refs #4

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 15:54:07 -04:00

1 KiB

VPS Health API

API sante minimaliste pour le VPS. ~127 lignes, Node 22 + HTTP natif.

Endpoints

  • GET /health — CPU, memoire, disque, uptime, logto ({status, responseTimeMs, error?})
  • GET /defenseurs — contenu de status.json (rapports defenseurs)

Auth

  • Bearer token via env HEALTH_TOKEN
  • Fail-closed : si HEALTH_TOKEN non configure, toutes les requetes sont refusees
  • Coolify : HEALTH_TOKEN doit etre is_runtime=true, is_buildtime=false. Buildtime fait fuiter le secret en clair dans application_deployment_queues.logs. Voir la-compagnie-maximus/docs/coolify-ops.md section "Secrets en buildtime".

Config

  • Port : 3001 (env PORT)
  • LOGTO_HEALTH_URL : URL du .well-known/openid-configuration (default auth.lacompagniemaximus.com)
  • Bind-mount : /data/defenseurs/status.json read-only

Deploy

Coolify auto-rebuild depuis push Forgejo. Aucune action manuelle requise.

Gotchas

  • Pas d'Express — HTTP natif Node.js uniquement
  • Le status.json est ecrit par le Sergent defenseurs, pas par cette API (read-only)