6c59c59f9e30235b3e38c85aa74df3b0bb9c0187
Phase 3: Create comprehensive tests for remaining deployment parameters and validation of mutual exclusions. New test files: - deployment_resources_test.yaml: Resources (CPU/memory/GPU), extra volumes, volume mounts, sidecar containers (70+ tests) - deployment_image_test.yaml: Image repository, tag, pullPolicy, imagePullSecrets for various registries (60+ tests) - deployment_jellyfin_test.yaml: Jellyfin-specific config including DLNA, metrics lifecycle hooks, command/args/env variables (70+ tests) - deployment_metadata_test.yaml: Names, labels, annotations, deployment strategy, revision history, replica count (70+ tests) - validation_mutual_exclusions_test.yaml: Critical validation tests using failedTemplate for NetworkPolicy conflicts, ServiceMonitor dependencies, persistence validations, port ranges (80+ tests) Critical validations tested: - NetworkPolicy vs DLNA/hostNetwork mutual exclusion (failedTemplate) - ServiceMonitor requires both metrics.enabled AND serviceMonitor.enabled - DLNA automatically enables hostNetwork and sets correct dnsPolicy - Persistence type validations (pvc/hostPath/emptyDir) - Port range validations (service.port: 1-65535, nodePort: 30000-32767) - DNS policy automatic configuration based on hostNetwork Edge cases covered: - Empty configuration arrays/objects - Multiple image pull secrets - Various env variable types (value, secretKeyRef, configMapKeyRef, fieldRef) - GPU and ephemeral-storage resources - All service types (ClusterIP, NodePort, LoadBalancer, ExternalName) Total: 5 new test files, 350+ new test cases Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
6c59c59f9e
·
2025-11-08 17:31:06 +03:00
165 Commits
Jellyfin Helm Charts Repository
This repository contains Helm charts for the jellyfin project.
Repository Structure
Each Helm chart is stored in its own directory. Each chart follows the standard Helm chart structure:
jellyfin-helm/
├── jellyfin/
│ ├── Chart.yaml
│ ├── values.yaml
│ ├── templates/
│ └── ...
├── chart2/
│ ├── Chart.yaml
│ ├── values.yaml
│ ├── templates/
│ └── ...
└── ...
Chart.yaml: Contains metadata about the chart (name, version, app version, etc.).values.yaml: Default configuration values for the chart.templates/: The Kubernetes resource templates (YAML files) that Helm uses to deploy the chart.
How to Use the Charts
1. Add this Repository
To use the charts in this repository, first add the repository to Helm:
helm repo add jellyfin https://jellyfin.github.io/jellyfin-helm
helm repo update
2. Install a Chart
To install a chart from this repository, use the following command:
helm install <release-name> jellyfin/<chart-name>
3. Customize Installation
You can customize the installation by passing in custom values via the --set flag or by using a values.yaml file:
helm install <release-name> jellyfin/<chart-name> --set key=value
or
helm install <release-name> jellyfin/<chart-name> -f custom-values.yaml
Contributing
Feel free to contribute to this repository by:
- Submitting new charts.
- Fixing bugs or issues.
- Improving documentation.
To contribute, fork this repository, create a new branch, and submit a pull request with your changes.
License
This repository is licensed under the MIT License. See the LICENSE file for more details.
Languages
Smarty
100%