🎉 DevOps Interview Prep Bundle is live — 1000+ Q&A across 20 topicsGet it →
All Fixes
Today I Fixed

Helm: Error: release not found (but it definitely exists)

helmJun 24, 20268 minutes to fixhelmtroubleshooting

Ran helm upgrade my-app ./chart and got:

Error: UPGRADE FAILED: release: not found

The release 100% existed — I could see it in the Kubernetes cluster. Ran helm list and got nothing.

Root cause:

Helm stores release metadata as Kubernetes Secrets in the namespace the release was deployed to. helm list without -n only shows releases in the default namespace.

My release was in the production namespace.

bash
helm list -n production
# NAME     NAMESPACE   REVISION  STATUS    CHART        APP VERSION
# my-app   production  5         deployed  my-app-1.2.0 2.1.0

There it was.

Fix:

bash
# Always specify namespace
helm upgrade my-app ./chart -n production
 
# Or to see releases across all namespaces
helm list -A

Prevention:

Set a default namespace context in kubectl:

bash
kubectl config set-context --current --namespace=production

Now all kubectl AND helm commands default to production namespace. No more -n production needed everywhere (until you switch namespaces).

Lesson: Helm is namespace-scoped. helm list without -n shows only the default namespace. Always specify -n namespace or use -A to see all. This trips up almost everyone at some point.