<@ULVA73B9P> Error: INSTALLATION FAILED: Unable to...
# marvin-ai
k
@Marvin Error: INSTALLATION FAILED: Unable to continue with install: ConfigMap "prefect-worker-base-job-template" in namespace "prefect" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key "meta.helm.sh/release-name" must equal "prefect-cpu-worker": current value is "prefect-worker". I have set
Copy code
nameOverride: prefect-cpu-worker
fullnameOverride: prefect-cpu-worker
m
thought for 74.4 seconds
This is a Helm ownership conflict, not a Prefect worker naming issue.
nameOverride
/
fullnameOverride
change many chart resource names, but not the base job template ConfigMap name by default. What’s happening: - You already have a ConfigMap named
prefect-worker-base-job-template
- It was created by the Helm release
prefect-worker
- Now you’re installing a different Helm release,
prefect-cpu-worker
- That second release is trying to manage the same ConfigMap name - Helm refuses because the existing object is annotated as owned by another release That’s why you see:
<http://meta.helm.sh/release-name|meta.helm.sh/release-name> must equal "prefect-cpu-worker": current value is "prefect-worker"
Why
fullnameOverride
didn’t help
The worker chart uses a separate value for the base job template ConfigMap name. Its default is effectively:
Copy code
text
prefect-worker-base-job-template
So unless you explicitly override that, multiple worker releases in the same namespace collide on that ConfigMap. Fix Give each worker release its own base job template ConfigMap name, for example:
Copy code
yaml
nameOverride: prefect-cpu-worker
fullnameOverride: prefect-cpu-worker

worker:
  config:
    baseJobTemplate:
      name: prefect-cpu-worker-base-job-template
If you have another worker release, give it a different one too:
Copy code
yaml
nameOverride: prefect-worker
fullnameOverride: prefect-worker

worker:
  config:
    baseJobTemplate:
      name: prefect-worker-base-job-template
Then install/upgrade again. If this is a brand new release and you don’t need the old ConfigMap You can delete the old ConfigMap first:
Copy code
bash
kubectl delete configmap prefect-worker-base-job-template -n prefect
Then reinstall. But only do that if the old
prefect-worker
release is no longer using it. Alternative options - Put each worker Helm release in a different namespace - Reuse one shared manually-managed ConfigMap if both workers should use the same base job template Recommended path If you want multiple Prefect worker Helm releases in the same namespace, set a unique value for:
Copy code
yaml
worker.config.baseJobTemplate.name
for each release. If you want, I can help you write a complete
values.yaml
for two workers in the same namespace without collisions.