cozystack/packages
Andrei Kvapil 84b2fa90dd
feat(installer): add variant-aware templates for generic Kubernetes support (#2010)
## 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
2026-02-16 16:49:49 +01:00
..
apps feat(vpc): migrate subnets definition from map to array format 2026-02-15 21:34:19 +01:00
core feat(installer): add variant-aware templates for generic Kubernetes support (#2010) 2026-02-16 16:49:49 +01:00
extra Prepare release v1.0.0-beta.4 2026-02-14 09:17:24 +00:00
library refactor: move scripts to hack directory 2026-01-15 16:06:56 +01:00
system Merge branch 'main' into feat/kilo-cilium-variant 2026-02-16 16:38:58 +01:00
tests/cozy-lib-tests refactor: replace Helm lookup with valuesFrom mechanism 2026-01-05 16:10:55 +01:00