Files
claude 49f4a11bcc Add doctor and init; provision databases from the platform ConfigMap
- internal/platform: detect and grade storage classes (Longhorn, Ceph, Mayastor,
  LINSTOR, Portworx, GKE/Azure/AWS, NFS, local), Postgres operators (CNPG,
  Zalando, Crunchy, Percona, StackGres), MySQL operators (InnoDB Cluster, PXC,
  MariaDB, legacy shared-mysql), ingress classes, gateways and Redis
- Choose picks HA candidates (default class wins, ambiguity is an error with
  the flag to resolve it) and stores them as flat zero-scale-platform keys
- zero-scale-ctl doctor (read-only) and init (diff, confirm or --yes)
- DB provisioning goes through per-operator adapters; SQL travels on stdin,
  the MySQL admin password is read from a Secret and sent on stdin, and
  identifiers and passwords are validated
- Postgres endpoint now names the namespace the cluster is in (was the app's)
- Redis service, ingress class and config-file DB hosts come from the platform
- Legacy fallback with a warning when no platform ConfigMap exists
2026-10-27 06:44:55 -04:00

10 lines
704 B
JSON

{"items":[
{"metadata":{"name":"longhorn","annotations":{"storageclass.kubernetes.io/is-default-class":"true"}},"provisioner":"driver.longhorn.io","parameters":{"numberOfReplicas":"3"}},
{"metadata":{"name":"longhorn-single"},"provisioner":"driver.longhorn.io","parameters":{"numberOfReplicas":"1"}},
{"metadata":{"name":"local-path"},"provisioner":"rancher.io/local-path"},
{"metadata":{"name":"ceph-block"},"provisioner":"rook-ceph.rbd.csi.ceph.com"},
{"metadata":{"name":"nfs"},"provisioner":"nfs.csi.k8s.io"},
{"metadata":{"name":"gp3"},"provisioner":"ebs.csi.aws.com"},
{"metadata":{"name":"regional"},"provisioner":"pd.csi.storage.gke.io","parameters":{"replication-type":"regional-pd"}}
]}