chrisfu
55b6a6aff3
Complete rebranding from prole to knoe and fix macOS application identity. Bulk renamed 'prole' to 'knoe' across code, scripts, and manifests. Updated Makefile with 'knoe', 'build', and 'start' targets. Implemented macOS Application Bundle (.app) support for correct identity. Fixed macOS 'Python' process name to 'Knoe.DB Installer' via Objective-C bridge. Standardized application name to 'Knoe.DB Installer' across all interfaces.
...
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-22 15:08:35 -07:00
chrisfu
b1755f4e7b
Stabilize prod deployment flow and harden Garage/CNPG ops
...
Switch production config to k8s/GKE contexts and align service naming. Add immutable StatefulSet update fallback for Garage across k3d/k3s/k8s. Harden CNPG deploy and backup bootstrap paths, and update installer coverage for CNPG webhook and Garage common ops.
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-11 20:19:36 -07:00
chrisfu
c94c62e1bb
Harden prod deploy namespace/context routing and vault password handling
...
- persist and load DB master password via Ansible Vault bootstrap flow
- enforce knoe-system service namespace and explicit app/db kubecontext targeting
- improve OpenBao/CNPG deploy reliability and logging; add retries/readiness diagnostics
- tighten reset/delete cluster behavior and expand installer/deploy pipeline test coverage
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-10 00:43:07 -07:00
chrisfu
df6de9138e
checkpoint: summarize CNPG init and backup hardening work
...
- harden CNPG backup ObjectStore readiness fallback in statusless clusters by validating controller availability and expected spec
- improve backup/plugin reconciliation paths and related test coverage for barman-cloud flows
- include ongoing GKE/CNPG deployment and configuration updates from this checkpoint
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-06 05:51:26 -07:00
chrisfu
c165ee1a87
fix(cnpg): stabilize CNPG/Barman Cloud init on GKE (knoe-dev-0 / knoe-db-0)
...
- cloudnative_pg.py: add _wait_for_webhook_ca_bundle() to poll ValidatingWebhookConfiguration
until cainjector has injected the CA bundle; fall back to _try_inject_ca_bundle_manually()
on timeout (reads cert-manager-webhook-ca secret, patches webhook directly)
- cloudnative_pg.py: add _wait_for_barman_tls_secrets() to wait for barman-cloud-{client,server}-tls
before declaring Barman Cloud ready; surfaces warning instead of silent FailedMount
- deploy/gcp/gke/namespace.yaml: ecosystem-0 -> knoe-db-0 (ekosystem = k8s cluster, not namespace)
- deploy/gcp/gke/knoe-db.yaml: fix namespace ecosystem-0 -> knoe-db-0; set
podAntiAffinityType: required (one CNPG pod per node); add Spot node toleration so
GKE autoscaler simulation succeeds and scale-up is unblocked; add resource
requests/limits (500m/512Mi -> 2/2Gi); set googleCredentials.gkeEnvironment: true
(use Workload Identity - no explicit credentials secret needed)
- deploy/gcp/gke/knoe-db-backup-gcs.yaml: fix namespaces ecosystem-0 -> knoe-db-0
- deploy/gcp/gke/workload-identity.yaml: update comments ecosystem-0 -> knoe-db-0
- tests/installer/test_cnpg_barman_webhook.py: new - 13 tests covering webhook CA bundle
polling, manual CA injection, Barman TLS secret wait, and install_barman_plugin retry logic
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-05 02:04:11 -07:00