From e8734bef7c1a8c733ab5205539510f2305f79c13 Mon Sep 17 00:00:00 2001 From: CuBiC Date: Thu, 18 Mar 2021 17:18:09 +0100 Subject: [PATCH] [jellyfin] Move image to official (#693) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat!: migrate to new version on official image * docs: example for rootless GPU transcoding * feat!: migrate to new version on official image * docs: example for rootless GPU transcoding * docs: regenerate README.md * docs: fix wording Co-authored-by: ᗪєνιη ᗷυнʟ Co-authored-by: ᗪєνιη ᗷυнʟ --- charts/stable/jellyfin/Chart.yaml | 6 +-- charts/stable/jellyfin/README.md | 51 ++++++++++++++----- .../jellyfin/README_CHANGELOG.md.gotmpl | 40 +++++++++++---- charts/stable/jellyfin/values.yaml | 49 +++++++++++++++++- 4 files changed, 119 insertions(+), 27 deletions(-) diff --git a/charts/stable/jellyfin/Chart.yaml b/charts/stable/jellyfin/Chart.yaml index 1e64f040..bc79e8c7 100644 --- a/charts/stable/jellyfin/Chart.yaml +++ b/charts/stable/jellyfin/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 -appVersion: 10.6.4 +appVersion: 10.7.0 description: Jellyfin is a Free Software Media System name: jellyfin -version: 5.2.1 +version: 6.0.0 kubeVersion: ">=1.16.0-0" keywords: - jellyfin @@ -11,7 +11,7 @@ keywords: home: https://github.com/k8s-at-home/charts/tree/master/charts/stable/Jellyfin icon: https://github.com/jellyfin/jellyfin-ux/blob/master/branding/SVG/icon-solid-black.svg sources: -- https://hub.docker.com/r/linuxserver/Jellyfin/ +- https://hub.docker.com/r/jellyfin/jellyfin - https://github.com/jellyfin/jellyfin maintainers: - name: billimek diff --git a/charts/stable/jellyfin/README.md b/charts/stable/jellyfin/README.md index da58752b..bb4c4563 100644 --- a/charts/stable/jellyfin/README.md +++ b/charts/stable/jellyfin/README.md @@ -1,6 +1,6 @@ # jellyfin -![Version: 5.2.0](https://img.shields.io/badge/Version-5.2.0-informational?style=flat-square) ![AppVersion: 10.6.4](https://img.shields.io/badge/AppVersion-10.6.4-informational?style=flat-square) +![Version: 6.0.0](https://img.shields.io/badge/Version-6.0.0-informational?style=flat-square) ![AppVersion: 10.7.0](https://img.shields.io/badge/AppVersion-10.7.0-informational?style=flat-square) Jellyfin is a Free Software Media System @@ -8,7 +8,7 @@ Jellyfin is a Free Software Media System ## Source Code -* +* * ## Requirements @@ -77,9 +77,12 @@ N/A | Key | Type | Default | Description | |-----|------|---------|-------------| | image.pullPolicy | string | `"IfNotPresent"` | | -| image.repository | string | `"linuxserver/jellyfin"` | | -| image.tag | string | `"version-10.6.4-1"` | | +| image.repository | string | `"jellyfin/jellyfin"` | | +| image.tag | string | `"10.7.0"` | | | ingress.enabled | bool | `false` | | +| persistence.cache.emptyDir | bool | `false` | | +| persistence.cache.enabled | bool | `false` | | +| persistence.cache.mountPath | string | `"/cache"` | | | persistence.config.emptyDir | bool | `false` | | | persistence.config.enabled | bool | `false` | | | persistence.media.emptyDir | bool | `false` | | @@ -94,21 +97,43 @@ All notable changes to this application Helm chart will be documented in this fi The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -### [1.0.0] +### [6.0.0] + +#### Migration !breaking changes! + +*It is recommended to drop old configuration and start from scratch.* + +This release will change the layout of `config` and `cache` persistent volumes. +To migrate the old configuration, manual modifications to volumes are required prior the upgrade or after the upgrade. +Be aware that `cache` will only be created after the upgrade if auto provisioning is used. + +Mount (depends on used CSI) both volumes `config` and `cache` and be sure that jellyfin does not access the files (or is scaled down to zero). +The volumes are assumed to be mounted on `/mnt/config` and `/mnt/cache` in the example: + +```bash +cd /mnt +mv config/cache/* cache/ +rm -r config/cache +mkdir config/config +mv dlna/ branding.xml encoding.xml logging.default.json migrations.xml network.xml system.xml config/ +mv data data.bak +mv data.bak/* . +rm -r data.bak +sed -i "s|.*|/cache|" config/system.xml +sed -i "s|.*|/config/metadata|" config/system.xml +sed -i "s|.*|/usr/lib/jellyfin-ffmpeg/ffmpeg|" config/encoding.xml +sed -i "s|.*|/usr/lib/jellyfin-ffmpeg/ffmpeg|" config/encoding.xml +``` + +Drop browser cache and cookies for your jellyfin URL! #### Added -- N/A +- Persistent volume definition for cache #### Changed -- N/A - -#### Removed - -- N/A - -[1.0.0]: #1.0.0 +- Replaced LinuxServer.io image with official ## Support diff --git a/charts/stable/jellyfin/README_CHANGELOG.md.gotmpl b/charts/stable/jellyfin/README_CHANGELOG.md.gotmpl index 457def03..48e37365 100644 --- a/charts/stable/jellyfin/README_CHANGELOG.md.gotmpl +++ b/charts/stable/jellyfin/README_CHANGELOG.md.gotmpl @@ -9,19 +9,41 @@ All notable changes to this application Helm chart will be documented in this fi The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -### [1.0.0] +### [6.0.0] + +#### Migration !breaking changes! + +*It is recommended to drop old configuration and start from scratch.* + +This release will change the layout of `config` and `cache` persistent volumes. +To migrate the old configuration, manual modifications to volumes are required prior the upgrade or after the upgrade. +Be aware that `cache` will only be created after the upgrade if auto provisioning is used. + +Mount (depends on used CSI) both volumes `config` and `cache` and be sure that jellyfin does not access the files (or is scaled down to zero). +The volumes are assumed to be mounted on `/mnt/config` and `/mnt/cache` in the example: + +```bash +cd /mnt +mv config/cache/* cache/ +rm -r config/cache +mkdir config/config +mv dlna/ branding.xml encoding.xml logging.default.json migrations.xml network.xml system.xml config/ +mv data data.bak +mv data.bak/* . +rm -r data.bak +sed -i "s|.*|/cache|" config/system.xml +sed -i "s|.*|/config/metadata|" config/system.xml +sed -i "s|.*|/usr/lib/jellyfin-ffmpeg/ffmpeg|" config/encoding.xml +sed -i "s|.*|/usr/lib/jellyfin-ffmpeg/ffmpeg|" config/encoding.xml +``` + +Drop browser cache and cookies for your jellyfin URL! #### Added -- N/A +- Persistent volume definition for cache #### Changed -- N/A - -#### Removed - -- N/A - -[1.0.0]: #1.0.0 +- Replaced LinuxServer.io image with official {{- end -}} diff --git a/charts/stable/jellyfin/values.yaml b/charts/stable/jellyfin/values.yaml index c821b1db..3273221b 100644 --- a/charts/stable/jellyfin/values.yaml +++ b/charts/stable/jellyfin/values.yaml @@ -6,9 +6,9 @@ # image: - repository: linuxserver/jellyfin + repository: jellyfin/jellyfin pullPolicy: IfNotPresent - tag: version-10.6.4-1 + tag: 10.7.0 strategy: type: Recreate @@ -25,6 +25,24 @@ persistence: enabled: false emptyDir: false + # Cache does NOT contain temporary transcoding data. + cache: + enabled: false + emptyDir: false + mountPath: /cache + ## Persistent Volume Storage Class + ## If defined, storageClassName: + ## If set to "-", storageClassName: "", which disables dynamic provisioning + ## If undefined (the default) or set to null, no storageClassName spec is + ## set, choosing the default provisioner. (gp2 on AWS, standard on + ## GKE, AWS & OpenStack) + # storageClass: "-" + # accessMode: ReadWriteOnce + # size: 1Gi + ## Do not delete the pvc upon helm uninstall + # skipuninstall: false + # existingClaim: "" + media: enabled: false emptyDir: false @@ -41,3 +59,30 @@ persistence: ## Do not delete the pvc upon helm uninstall # skipuninstall: false # existingClaim: "" + +# podSecurityContext: +# runAsUser: 568 +# runAsGroup: 568 +# fsGroup: 568 +# # Hardware acceleration using an Intel iGPU w/ QuickSync +# # These IDs below should be matched to your `video` and `render` group on the host +# # To obtain those IDs run the following grep statement on the host: +# # $ cat /etc/group | grep "video\|render" +# # video:x:44: +# # render:x:109: +# supplementalGroups: +# - 44 +# - 109 + +# resources: +# requests: +# # Hardware acceleration using an Intel iGPU w/ QuickSync and +# # using intel-gpu-plugin (https://github.com/intel/intel-device-plugins-for-kubernetes) +# gpu.intel.com/i915: 1 +# cpu: 200m +# memory: 256Mi +# limits: +# # Hardware acceleration using an Intel iGPU w/ QuickSync and +# # using intel-gpu-plugin (https://github.com/intel/intel-device-plugins-for-kubernetes) +# gpu.intel.com/i915: 1 +# memory: 4096Mi