chore(k8s): live config values in overlay, script to fill missing secrets

- overlays/encry configmaps now carry the live cluster values (runbook
  step 1) plus OIDC_CLIENT_ID; kubectl diff against the cluster is empty.
- deploy/k8s/scripts/ensure-secrets.sh adds missing secret keys without
  touching existing ones (random encryption keys, empty Open-Meteo key,
  TELEGRAM_BOT_TOKEN=dummy) and never prints values.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
Nick SzaunigandClaude Opus 5.5 committed 2026-10-15 16:38:31 +02:00
1 parent dd1eecdfa0
commit 6e3e9aee9b
3 files changed
+86 -7

No files matched your search

@@ -1,6 +1,6 @@
# Werte fuer den Cluster. Bedeutung der Schluessel:
# base/backend/configmap.example.yaml. Hosts und Tenant sind Platzhalter,
# Runbook Schritt 1 uebernimmt die Live-Werte. Geheimes gehoert ins Secret
# base/backend/configmap.example.yaml. Live-Werte (Stand 2026-10-15) aus dem
# Cluster uebernommen (Runbook Schritt 1). Geheimes gehoert ins Secret
# apicore-backend-secret, nie hierher.
apiVersion: v1
kind: ConfigMap
@@ -10,15 +10,17 @@ data:
PORT: "3001"
JWT_ACCESS_EXPIRES_IN: "15m"
JWT_REFRESH_EXPIRES_IN: "7d"
FRONTEND_ORIGIN: "https://apicore.example.com"
FRONTEND_ORIGIN: "https://apicore.encry.de"
DOCUMENTS_STORAGE_PATH: "/data/documents"
BACKUP_STORAGE_PATH: "/data/backups"
BACKUP_CRON_SCHEDULE: "0 3 * * *"
BACKUP_RETENTION_COUNT: "14"
BACKUP_RETENTION_COUNT: "30"
COOKIE_SECURE: "true"
TRUST_PROXY: "loopback, 10.42.0.0/16, 173.245.48.0/20, 103.21.244.0/22, 103.22.200.0/22, 103.31.4.0/22, 141.101.64.0/18, 108.162.192.0/18, 190.93.240.0/20, 188.114.96.0/20, 197.234.240.0/22, 198.41.128.0/17, 162.158.0.0/15, 104.16.0.0/13, 104.24.0.0/14, 172.64.0.0/13, 131.0.72.0/22, 2400:cb00::/32, 2606:4700::/32, 2803:f800::/32, 2405:b500::/32, 2405:8100::/32, 2a06:98c0::/29, 2c0f:f248::/32"
OIDC_ISSUER_URL: "https://login.microsoftonline.com/<tenant-id>/v2.0"
OIDC_REDIRECT_URI: "https://api.apicore.example.com/api/v1/auth/sso/callback"
OIDC_ISSUER_URL: "https://login.microsoftonline.com/30e1c0c9-0295-4074-b45d-c3372140d2a4/v2.0/.well-known/openid-configuration"
# Oeffentliche Client-ID der Entra-App (kein Geheimnis); laeuft live hier.
OIDC_CLIENT_ID: "fe64e5ac-55c4-46dc-8b86-3340797d2451"
OIDC_REDIRECT_URI: "https://apicorebackend.encry.de/api/v1/auth/sso/callback"
WEATHER_HISTORY_SOURCE: "open-meteo"
OPEN_METEO_FORECAST_URL: "https://api.open-meteo.com/v1/forecast"
OPEN_METEO_ARCHIVE_URL: "https://archive-api.open-meteo.com/v1/archive"
@@ -5,4 +5,4 @@ kind: ConfigMap
metadata:
name: apicore-frontend-config
data:
API_URL: "https://api.apicore.example.com/api/v1"
API_URL: "https://apicorebackend.encry.de/api/v1"