--- # CNPG cluster for Forgejo (railiance01 production forge). # Managed by railiance-platform (S3). Operator: cnpg-system. # # Apply: KUBECONFIG=~/.kube/config-hosteurope make forgejo-db-deploy # Status: make forgejo-db-status # Backup: make forgejo-backup (pg_dump + forgejo dump → Nextcloud; docs/forgejo-backup.md) # # Pre-condition: forgejo-db-credentials Secret in databases namespace. # See helm/forgejo-db-secret.sops.yaml.template apiVersion: postgresql.cnpg.io/v1 kind: Cluster metadata: name: forgejo-db namespace: databases labels: app.kubernetes.io/name: forgejo-db app.kubernetes.io/component: database app.kubernetes.io/managed-by: manual railiance.io/layer: s3-platform railiance.io/consumer: forgejo spec: instances: 1 imageName: ghcr.io/cloudnative-pg/postgresql:16 # Burstable QoS + headroom for pg_dump / forgejo-backup (was BestEffort → probe # timeouts on :8000 under node CPU pressure). Sized like net-kingdom-pg on ~4Gi node. resources: requests: cpu: 200m memory: 512Mi limits: cpu: "1" memory: 1Gi # Default liveness window is 30s (3×10s); extend so backup I/O stalls do not restart the pod. livenessProbeTimeout: 90 probes: liveness: timeoutSeconds: 10 periodSeconds: 15 failureThreshold: 6 readiness: timeoutSeconds: 10 periodSeconds: 15 failureThreshold: 6 storage: size: 10Gi bootstrap: initdb: database: forgejo owner: forgejo secret: name: forgejo-db-credentials