Automatically extract and format changelog from artifacthub.io/changes
annotations in Chart.yaml and update GitHub release notes.
Changes:
- Install yq for YAML parsing
- Add step to extract changelog from Chart.yaml
- Format changelog with emojis based on change kind (added, fixed, etc.)
- Build comprehensive release notes with:
- Chart and app versions
- Formatted changelog
- Installation and upgrade instructions
- Links to documentation
- Update release notes after chart-releaser creates the release
This addresses the issue where releases only contained "A Helm chart for
Jellyfin Media Server" without any information about what changed.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
Add helm-unittest tests for revisionHistoryLimit:
- Default value (3) verification
- Custom values support (0, 1, 5, 100)
- Ability to disable revision history
Add NOTES.txt with revisionHistoryLimit information:
- Show configured revision history limit
- Warning when disabled (0)
- Note for minimal history (1)
- Rollback command example for normal values
This parameter controls how many old ReplicaSets are retained
for rollback purposes, reducing etcd storage usage.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
Add revisionHistoryLimit parameter to control how many old ReplicaSets are
retained for rollback purposes, reducing etcd storage usage compared to
Kubernetes default of 10.
Changes:
- Add revisionHistoryLimit parameter in values.yaml (default: 3)
- Add revisionHistoryLimit to deployment.yaml spec
- Provide comprehensive documentation with recommendations
- Bump chart version 2.5.0 -> 2.5.1 (patch - minor enhancement)
- Add changelog annotation for Artifact Hub
Benefits:
- Reduce etcd storage usage (especially important in large clusters)
- Maintain reasonable rollback capability (3 previous versions)
- Allow customization based on deployment needs
- Can be set to null to use Kubernetes default (10)
Default rationale:
- 3 revisions provides sufficient rollback capability for most use cases
- Reduces cluster resource usage (etcd storage, API server load)
- Follows best practices from production Kubernetes deployments
- Users can override if they need more history
Example usage:
# Use default (3 revisions)
revisionHistoryLimit: 3
# Increase for critical deployments
revisionHistoryLimit: 10
# Use Kubernetes default (10)
revisionHistoryLimit: null
# Disable history (not recommended)
revisionHistoryLimit: 0
See: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
Add helm-unittest test suite for HTTPRoute (Gateway API) covering:
- Not created by default (enabled: false)
- Created when enabled with required configuration
- Annotations support
- parentRefs configuration (name, namespace, sectionName)
- Hostnames support (single and multiple)
- Path matching rules (PathPrefix, Exact)
- Multiple rules and multiple matches per rule
- Backend references to Jellyfin service
- Custom service port handling
Add NOTES.txt with HTTPRoute-specific deployment information:
- Gateway references and configuration status
- Configured hostnames
- Number of routes
- Backend service details
- Access URLs when hostnames configured
- Warnings for missing parentRefs
Tests ensure HTTPRoute works correctly across all Gateway API scenarios.
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
Add support for Kubernetes Gateway API HTTPRoute resource as a modern
alternative to Ingress. The implementation follows the same pattern as
the existing Ingress template.
Changes:
- Add HTTPRoute template with configurable parentRefs, hostnames, and rules
- Add httpRoute section to values.yaml with generic examples
- Update Chart version from 2.5.0 to 2.6.0
- Add Artifact Hub changelog annotation
- Add HTTPRoute documentation to README
Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>