helm-controller/internal/diff
Hidde Beydals ccd8f88282
Correct cluster drift using patches
This changes the cluster drift correction behavior from performing a
Helm upgrade to performing create and patch API requests based on the
JSON Patch data.

Doing this is much lighter than performing a full release cycle, and
deals with the issue of Helm being unable to restore state of Custom
Resources without the `--force` flag being set. Which has unwanted
side-effects like forcing objects through a deletion/creation cycle.

After a drift correction attempt a Kubernetes Event is emitted, which
contains a summary of the created and patched resources, and a
collection of any (potential) errors.

As the goal is to restore state as best as we can, the drift correction
will be re-attempted until all resources have been restored to the
desired state.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-11-29 20:34:45 +01:00
..
summarize.go Correct cluster drift using patches 2023-11-29 20:34:45 +01:00
summarize_test.go Correct cluster drift using patches 2023-11-29 20:34:45 +01:00
unstructured.go Move HelmChart handling to separate reconciler 2023-11-20 12:02:40 +01:00
unstructured_test.go Move HelmChart handling to separate reconciler 2023-11-20 12:02:40 +01:00