improve how we prevent unit HelmRelease from reconciling with old state

This MR improves how we prevent unit HelmRelease from reconciling with old state, as explained in #1852 (closed).

The improvements are that:

  • we won't have these obscure could not resolve ConfigMap chart values reference 'sylva-system/root-dependency-33-cm' with key 'empty-value': configmaps "root-dependency-33-cm" not found kind of messages on a HelmRelease on a unit not having it's dependencies ready, during a sylva-units update
  • we wont't need sylvactl to have special cases to handle this
  • we can remove the workaround introduced by !3278 (merged) which introduced a user feedback regression (MR !3326 (merged) does this revert)

With this MR, for Helm-based units not having their dependencies ready, the HelmRelease will block on unable to get 'kubeadm-capm3-virt/root-dependency-helm-4' dependency: helmreleases.helm.toolkit.fluxcd.io "root-dependency-helm-1" not found.

This MR depends on new "devnull" chart (sylva-projects/sylva-elements/helm-charts/devnull!1 (merged)): a very special Helm chart that defines no Kubernetes resource, whose sole purpose is to let us define "dummy" FluxCD HelmReleases used as dependency of other HelmReleases.

Closes #1852 (closed)

Edited by Thomas Morin

Merge request reports

Loading