When a helm upgrade/install fails, this can not always be fixed with another helm deploy but with a rollback. Unfortunately helm can end up in situations where it is not able to roll back properly which happened to me a lot when the deploy to fix a broken deploy is broken as well. Helm then ends up with some assumption about reality that differs from reality and the only way out of it is purging the chart or tinkering with the tiller configmaps by hand (https://github.com/helm/helm/issues/2437, https://github.com/helm/helm/issues/1844).
Never versions of helm are able to auto-rollback failed deployments (helm upgrade --atomic). Using that, it's way harder (did not happen to me again) to end up in such a situation.
- Import an up-to-date version of helm
- deploy / use new helm version
- deploy / use new tiller version (matching helm version)
- Let helmfile call helm with --atomic