Add felhom-hub: multi-customer dashboard service
- Hub service receives reports from customer controllers - SQLite store with 90-day retention and auto-prune - REST API: POST /api/v1/report, GET /api/v1/customers - Dark theme dashboard with status overview table - Customer detail page with system, storage, containers, backup, health - Bearer token auth for report ingest, bcrypt auth for dashboard - K8s manifest for felhom-system namespace (Deployment, Service, Ingress, PVC) - Dockerfile with multi-stage build Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# =============================================================================
|
||||
# Felhom Hub Configuration
|
||||
# =============================================================================
|
||||
# Location: /etc/felhom-hub/hub.yaml (or mount as ConfigMap in k8s)
|
||||
#
|
||||
# The hub receives health reports from customer controllers and serves
|
||||
# a multi-customer overview dashboard for the operator.
|
||||
# =============================================================================
|
||||
|
||||
# --- Authentication ---
|
||||
auth:
|
||||
# Bcrypt hash for dashboard login (Viktor only)
|
||||
password_hash: ""
|
||||
|
||||
# --- API ---
|
||||
api:
|
||||
# Bearer token required for report ingest (POST /api/v1/report)
|
||||
report_api_key: ""
|
||||
|
||||
# --- Data retention ---
|
||||
retention:
|
||||
max_days: 90 # Keep 90 days of report history
|
||||
prune_schedule: "04:30" # Daily prune time (Europe/Budapest)
|
||||
|
||||
# --- Alerting thresholds ---
|
||||
alerting:
|
||||
stale_threshold: "30m" # Customer considered stale if no report for this duration
|
||||
|
||||
# --- Server ---
|
||||
server:
|
||||
listen: ":8080"
|
||||
data_dir: "/data" # SQLite database location
|
||||
Reference in New Issue
Block a user