## Summary - Extend the installer chart to support generic and hosted Kubernetes deployments via the existing `cozystackOperator.variant` parameter (introduced in #2034) - For `variant=generic`: render ConfigMaps (`cozystack`, `cozystack-operator-config`) and an optional Platform Package CR — resources previously required to be created manually before deploying on non-Talos clusters - Add variant validation in `packagesource.yaml` to fail fast on typos - Publish the installer chart as an OCI Helm artifact ## Motivation Deploying Cozystack on generic Kubernetes (k3s, kubeadm, RKE2) currently requires manually creating ConfigMaps before applying the rendered operator manifest. This change makes the installer chart variant-aware so that: 1. `helm template -s` workflow continues to produce correct rendered manifests 2. `helm install --set cozystackOperator.variant=generic` becomes a viable single-command deployment path for generic clusters 3. Required ConfigMaps and optional Platform Package CR are generated from values, eliminating manual steps ## OCI Helm chart publishing The installer chart is now packaged and pushed to the OCI registry as part of the `image` build target via `make chart`. A `.helmignore` file ensures only chart-relevant files are included in the published artifact. ## Test plan - [ ] `helm template` with `variant=talos` (default) renders: operator + PackageSource - [ ] `helm template` with `variant=generic` renders: operator + 2 ConfigMaps + PackageSource - [ ] `helm template` with `variant=generic` + `platform.enabled=true` renders: + Package CR - [ ] `helm template` with `variant=hosted` renders: operator + PackageSource - [ ] Invalid variant value produces a clear error message - [ ] `make manifests` generates all asset files - [ ] `helm package` produces a clean chart without build artifacts |
||
|---|---|---|
| .. | ||
| apps | ||
| core | ||
| extra | ||
| library | ||
| system | ||
| tests/cozy-lib-tests | ||