Template location: charts/servarr/templates/cleanuparr/deployment.yaml
Current behaviour:
- name: media
{{- if and .Values.jellyfin.enabled .Values.jellyfin.persistence.media.enabled }}
persistentVolumeClaim:
claimName: {{ .Release.Name }}-jellyfin-media # ← always uses generated name
Unlike the lidarr/radarr/sonarr templates (which correctly check
.Values.jellyfin.persistence.media.existingClaim), the cleanuparr template
hardcodes {{ .Release.Name }}-jellyfin-media. When an existingClaim is set, no PVC
with that generated name is created (correctly skipped by jellyfin/pvc.yaml), so
cleanuparr stays Pending with:
0/1 nodes are available: persistentvolumeclaim "servarr-jellyfin-media" not found.
Suggested fix (consistent with how other deployments handle it):
- name: media
{{- if and .Values.jellyfin.enabled .Values.jellyfin.persistence.media.enabled }}
persistentVolumeClaim:
claimName: {{ if .Values.jellyfin.persistence.media.existingClaim }}{{ .Values.jellyfin.persistence.media.existingClaim }}{{- else }}{{ .Release.Name }}-jellyfin-media{{- end }}
Chart version: 1.5.2
Kubernetes: k3s
Reproduction: Use a pre-existing NFS PVC as jellyfin.persistence.media.existingClaim with cleanuparr.enabled: true.
Template location:
charts/servarr/templates/cleanuparr/deployment.yamlCurrent behaviour:
Unlike the
lidarr/radarr/sonarrtemplates (which correctly check.Values.jellyfin.persistence.media.existingClaim), thecleanuparrtemplatehardcodes
{{ .Release.Name }}-jellyfin-media. When anexistingClaimis set, no PVCwith that generated name is created (correctly skipped by
jellyfin/pvc.yaml), socleanuparrstaysPendingwith:Suggested fix (consistent with how other deployments handle it):
Chart version: 1.5.2
Kubernetes: k3s
Reproduction: Use a pre-existing NFS PVC as
jellyfin.persistence.media.existingClaimwithcleanuparr.enabled: true.