fix(templates)!: deprecate initContainers in favor of extraInitContainers

BREAKING CHANGE: The 'initContainers' parameter is now deprecated in favor
of 'extraInitContainers' for naming consistency with 'extraContainers'.
Both parameters will work until 2030 for backward compatibility.

The previous implementation used '.Values.initContainers' in the template
but 'extraInitContainers' was defined in values.yaml, causing the feature
to be completely non-functional.

Changes:
- Fix extraInitContainers not working (was referencing wrong parameter)
- Add deprecated 'initContainers' parameter to values.yaml with @deprecated tag
- Update deployment.yaml to support both parameters with OR logic
- Add TODO comment to remove initContainers support after 2030
- Create NOTES.txt with:
  - Deprecation warning when using initContainers
  - Post-installation instructions for accessing Jellyfin
  - Persistence status information
  - Links to documentation
- Improve extraInitContainers documentation with usage example
- Bump chart version 2.5.0 -> 3.0.0 (major due to deprecation)
- Add comprehensive changelog to artifacthub.io/changes

Migration guide:
  Old: initContainers: [...]
  New: extraInitContainers: [...]

The old parameter will continue to work but users will see a deprecation
warning in NOTES.txt after installation.

Follows best practices from community charts (Prometheus, Elastic, etc.)
where 'extra*' prefix indicates user-provided extension points.

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
This commit is contained in:
Aleksei SviridkinandClaude committed 2025-11-06 00:51:45 +03:00 Unverified
1 parent 2401a45bb1
commit 90861109aa
4 files changed
+134 -5

No files matched your search

+16 -2
View File
@@ -254,8 +254,22 @@ metrics:
# -- Target labels to add to the scraped metrics
targetLabels: []
# -- additional init containers to run inside the pod.
# -- DEPRECATED: Use extraInitContainers instead. Will be removed after 2030.
# @deprecated - This parameter is deprecated, use extraInitContainers instead
initContainers: []
# -- Additional init containers to run inside the pod.
# Init containers run before the main application container starts.
# See: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
# Example:
# extraInitContainers:
# - name: init-config
# image: busybox:1.35
# command: ['sh', '-c', 'echo "Initializing..." && sleep 5']
# volumeMounts:
# - name: config
# mountPath: /config
extraInitContainers: []
# -- additional sidecar containers to run inside the pod.
extraContainers: []