Files
LOGINMASTER-DeploymentScript/templates/03-configmap.yaml
T
Luca 468d4562c7 Initial commit — LoginMaster tenant deployment toolkit
Toolkit per deployare/aggiornare un tenant LoginMaster su qualsiasi Kubernetes
(EKS/AKS/DOKS/Scaleway/vSphere/...). Contiene:

- deploy.sh: bootstrap di un nuovo tenant (idempotente, re-run protection,
  storage class auto-rilevata, prompt separati api/admin tag, generazione
  segreti crittografici via openssl rand).
- update.sh: rolling update zero-downtime con tag api/admin separati, rollback
  hint via 'kubectl rollout undo', riapplicazione opzionale del ConfigMap.
- templates/: 8 manifest parametrici (envsubst): namespace, cert-manager TLS
  Mongo, NetworkPolicy intra-namespace, ConfigMap, MongoDB StatefulSet 3 repliche
  con TLS interno + initContainer per keyfile/PEM, tenant-api Deployment 2 repliche
  con CA validation, tenant-admin, ingress nginx + Let's Encrypt.

Sicurezza: TLS interno Mongo (cert-manager CA self-signed 10y), keyFile per
auth replica set, password client mai in argv, NetworkPolicy che isola il
tenant, pod Mongo non-root (uid 999) con initContainer come root per i file
runtime in tmpfs.
2026-05-06 11:44:04 +02:00

26 lines
888 B
YAML

apiVersion: v1
kind: ConfigMap
metadata:
name: tenant-api-config
namespace: ${NAMESPACE}
data:
NODE_ENV: "production"
PORT: "3000"
# MONGODB_URI è nel Secret mongodb-tenant-auth (contiene credenziali)
LOGINMASTER_API_URL: "${LOGINMASTER_API_URL}"
ADMIN_ALLOWED_ORIGIN: "${ADMIN_ALLOWED_ORIGIN}"
TENANT_ADMIN_URL: "${TENANT_ADMIN_URL}"
# CORS_ORIGIN e MANAGE_ALLOWED_ORIGIN sono alias di TENANT_ADMIN_URL: nomi
# storici letti dal codice API. Tenuti per compat — se l'API ne legge solo
# uno è innocuo, ma è preferibile che il codice legga TENANT_ADMIN_URL.
CORS_ORIGIN: "${TENANT_ADMIN_URL}"
MANAGE_ALLOWED_ORIGIN: "${TENANT_ADMIN_URL}"
JWT_ACCESS_EXPIRY: "15m"
JWT_REFRESH_EXPIRY: "7d"
LOG_LEVEL: "info"
SMTP_HOST: "${SMTP_HOST}"
SMTP_PORT: "${SMTP_PORT}"
SMTP_SECURE: "${SMTP_SECURE}"
SMTP_USER: "${SMTP_USER}"
EMAIL_FROM: "${EMAIL_FROM}"