Commit Graph
5 Commits
  • ci(release): format release notes with changelog and emojis
    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>
  • test(deployment): add revisionHistoryLimit tests and deployment notes
    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>
  • feat(deployment): add revisionHistoryLimit parameter for rollback history control
    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>
  • test(env): add envFrom support tests and deployment notes
    Add helm-unittest tests for envFrom functionality:
    - No envFrom by default
    - ConfigMap reference support
    - Secret reference support
    - Multiple envFrom sources
    - Optional ConfigMap/Secret support
    - Prefix support for variable namespacing
    - Compatibility with regular env variables
    
    Add NOTES.txt with envFrom information:
    - Show count of envFrom sources
    - List each source (ConfigMap or Secret)
    - Display optional and prefix settings
    
    Tests ensure envFrom works correctly for loading environment
    variables from ConfigMaps and Secrets.
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    Signed-off-by: Aleksei Sviridkin <f@lex.la>
  • feat(deployment): add envFrom support for ConfigMap/Secret environment variables
    Add support for loading environment variables from ConfigMap or Secret
    resources using envFrom field, following Kubernetes best practices for
    configuration management.
    
    Changes:
    - Add jellyfin.envFrom parameter in values.yaml
    - Add envFrom section in deployment.yaml template (before env)
    - Provide comprehensive documentation with examples
    - Bump chart version 2.5.0 -> 2.6.0 (minor - new feature)
    - Add changelog annotation for Artifact Hub
    
    Use cases:
    - Load multiple environment variables from ConfigMap without defining each one
    - Load secrets from external secret management systems
    - Separate configuration from chart values (12-factor app pattern)
    - Simplify configuration for complex deployments
    
    Example usage:
      jellyfin:
        envFrom:
          - configMapRef:
              name: jellyfin-config
          - secretRef:
              name: jellyfin-secrets
    
    Follows standard Kubernetes patterns used by most community Helm charts.
    
    Co-Authored-By: Claude <noreply@anthropic.com>
    Signed-off-by: Aleksei Sviridkin <f@lex.la>