rendered manifests contain a resource that already exists. Unable to continue with install: ... invalid ownership metadata
Helm wants to create an object that already exists but isn’t labelled as belonging to this release.
Seen on:
Kubernetes
Meaning
Objects created manually, by another release or by kubectl apply lack Helm’s app.kubernetes.io/managed-by=Helm label and meta.helm.sh/release-name annotations. Helm refuses to take them over unless you add them (adopt) or delete the object.
Common causes
- Resource created manually or by another tool before Helm
- Resource owned by a different release (duplicate names across charts)
- Migrating from Helm 2 or kubectl-managed manifests
⚡ Quick fix
- Adopt it by adding Helm’s label and annotations
- Delete the existing object if safe
- Rename resources so charts don’t collide
Detailed fix by platform
Kubernetes
- bash
kubectl label secret db app.kubernetes.io/managed-by=Helm -n app kubectl annotate secret db meta.helm.sh/release-name=web meta.helm.sh/release-namespace=app -n app
How to diagnose
- Owner — Existing labels/annotations
- Release — Which release should own it?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
- admission webhook denied the request Error from server: admission webhook "validate.nginx.ingress.kubernetes.io" denied the request
- AlreadyExists Error from server (AlreadyExists): ... already exists
- another operation is in progress Error: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress
Most viewed in Kubernetes
Other ways to find it
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
Was this page helpful?
Report a correction or suggest an improvement
Last updated 7 Oct 2026