Add annotation to override or adding Helm values
Sometimes it is necessary to override Helm values which are not set by the Operator if used with a Custom Resource.
In our case the custom resource abstracts the Helm values and differentiates. Nevertheless our Helm charts provides more options than the CR thus necessary to add overrides to adjust Helm values directly (or disabling auto-sensing for specific values).
Proposal
Add operators.operatorframework.io.helm-operator-plugins.value-override/path.to.helm.key=value annotation which overrides the value.
Optional adding an option which disables this annotation to override Helm values.
We are wondering why we would need to take this path, rather than simply adding these values to the CRD?
@joelanford suggested that the operator author could make use of the value translator interface, so custom annotations can be read by the operator that way, but it we will need a good use case to accept this in the helm plugin.
@SimonBaeumer @asmacdo any other information on this issue?
I'm going to close for now, please reopen if this is still needed.
This is necessary when a Helm chart has more options than the operator's CRD. This happens often when an existing Helm chart is used to install the operand. Today we faced an incident where we needed to pause the reconciler and adjust k8s resources manually for a timeout change which was not exposed in the CRD.
For us the difference is mostly that this is a break-glass mechanism used for support & cloud teams to implement hot-fixes without a new operator image.
@asmacdo Can you reopen this issues please?