I have an interesting problem concerning integrating Kubernetes Operators into our helm charts.
I have PR 13299 that now installs Kiali via the new Kiali Operator.
It works great… UNTIL! I go to uninstall Istio. Using
helm delete causes helm to delete the operator before the operator has a chance to clean up the resources it manages. What this means is the Kiali Operator gets removed but Kiali remains running because the operator has been removed and so it can’t remove Kiali and the helm charts can’t remove Kiali because helm knows nothing about the Kiali resources anymore (because managing those resources has been delegated to the operator!).
I think this might be a general problem with helm delegating the installation of any component thru an operator (I don’t think this is Kiali specific) - helm just doesn’t seem to wait for the operator to “do its thing”.
I see Jaeger tracing has PR 9508 that also introduces its operator in the Istio helm charts - I was curious how they managed to work around this (if they did).
Is there something I might be doing wrong? Or am I understanding the situation correctly?
(to be clear, the problem is when uninstalling Istio. Things works great when you install things via operators - the problems surface when you uninstall Istio).