6d9cd89cc5
Document server-side rollout (values, Sealed Secrets, logging, greenfield reset) with environment variables so any cluster can follow the same steps. Co-authored-by: Cursor <cursoragent@cursor.com>
31 lines
1.4 KiB
YAML
31 lines
1.4 KiB
YAML
# Example: seal platform secrets for namespace cloudhost.
|
|
# Full guide (any environment): RUNBOOK-DEPLOY.fa.md — Phase 3
|
|
# Real SealedSecret lives in cloud-host-gitops/sealed-secrets/ — never commit plaintext passwords.
|
|
#
|
|
# Required keys (must match backend Deployment + validate-production-config):
|
|
# postgres-password, jwt-secret, jwt-refresh-secret, cluster-kubeconfig-key, redis-password
|
|
#
|
|
# Generate (replace CHANGE_ME_* with strong random values):
|
|
#
|
|
# kubectl -n cloudhost create secret generic abrban-platform-secrets \
|
|
# --from-literal=postgres-password='CHANGE_ME_PG' \
|
|
# --from-literal=jwt-secret='CHANGE_ME_JWT_32CHARS_MIN' \
|
|
# --from-literal=jwt-refresh-secret='CHANGE_ME_REFRESH_32CHARS_MIN' \
|
|
# --from-literal=cluster-kubeconfig-key='0123456789abcdef0123456789abcdef' \
|
|
# --from-literal=redis-password='CHANGE_ME_REDIS' \
|
|
# --dry-run=client -o json \
|
|
# | kubeseal \
|
|
# --controller-name=sealed-secrets-controller \
|
|
# --controller-namespace=kube-system \
|
|
# --format yaml \
|
|
# > ../cloud-host-gitops/sealed-secrets/abrban-platform-secrets.yaml
|
|
#
|
|
# Then in platform/values-abrban.yaml:
|
|
# secrets:
|
|
# existingSecret: abrban-platform-secrets
|
|
#
|
|
# Apply:
|
|
# kubectl apply -f ../cloud-host-gitops/sealed-secrets/abrban-platform-secrets.yaml
|
|
#
|
|
# Rotate redis-password: update SealedSecret, sync Argo, restart backend + redis pods.
|