diff --git a/charts/incubator/dispatcharr/.helmignore b/charts/incubator/dispatcharr/.helmignore new file mode 100644 index 00000000000..feb7464da6f --- /dev/null +++ b/charts/incubator/dispatcharr/.helmignore @@ -0,0 +1,32 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ +# OWNERS file for Kubernetes +OWNERS +# helm-docs templates +*.gotmpl +# docs folder +/docs +# icon +icon.png +icon.webp +icon-small.webp diff --git a/charts/incubator/dispatcharr/CHANGELOG.md b/charts/incubator/dispatcharr/CHANGELOG.md new file mode 100644 index 00000000000..f3e8318aa10 --- /dev/null +++ b/charts/incubator/dispatcharr/CHANGELOG.md @@ -0,0 +1,4 @@ +--- +title: Changelog +pagefind: false +--- diff --git a/charts/incubator/dispatcharr/Chart.yaml b/charts/incubator/dispatcharr/Chart.yaml new file mode 100644 index 00000000000..29eca5a4b05 --- /dev/null +++ b/charts/incubator/dispatcharr/Chart.yaml @@ -0,0 +1,42 @@ +annotations: + artifacthub.io/links: |- + - name: support + url: https://discord.com/invite/tVsPTHWTtr + max_scale_version: 24.04.1 + min_scale_version: 24.04.0 + truecharts.org/category: media + truecharts.org/max_helm_version: "3.17" + truecharts.org/max_kubernetes_version: 1.32.0 + truecharts.org/min_helm_version: "3.14" + truecharts.org/min_kubernetes_version: 1.24.0 + truecharts.org/train: incubator +apiVersion: v2 +appVersion: 0.10.4 +dependencies: + - name: common + version: 28.25.0 + repository: oci://oci.trueforge.org/truecharts + condition: "" + alias: "" + tags: [] + import-values: [] +deprecated: false +description: Your Ultimate IPTV & Stream Management Companion +home: https://truecharts.org/charts/incubator/dispatcharr +icon: https://truecharts.org/img/hotlink-ok/chart-icons/dispatcharr.webp +keywords: + - dispatcharr + - MediaApp-Other +kubeVersion: '>=1.24.0-0' +maintainers: + - name: TrueCharts + email: info@truecharts.org + url: https://truecharts.org +name: dispatcharr +sources: + - https://github.com/Dispatcharr/Dispatcharr + - https://github.com/trueforge-org/truecharts/tree/master/charts/incubator/dispatcharr + - https://hub.docker.com/r/dispatcharr/dispatcharr + - https://github.com/Dispatcharr/Dispatcharr/blob/main/docker/docker-compose.aio.yml +type: application +version: 0.0.1 diff --git a/charts/incubator/dispatcharr/README.md b/charts/incubator/dispatcharr/README.md new file mode 100644 index 00000000000..2b8cc49d247 --- /dev/null +++ b/charts/incubator/dispatcharr/README.md @@ -0,0 +1,3 @@ +--- +title: README +--- diff --git a/charts/incubator/dispatcharr/icon.png b/charts/incubator/dispatcharr/icon.png new file mode 100644 index 00000000000..99c3c19f3d6 Binary files /dev/null and b/charts/incubator/dispatcharr/icon.png differ diff --git a/charts/incubator/dispatcharr/templates/NOTES.txt b/charts/incubator/dispatcharr/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/charts/incubator/dispatcharr/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/charts/incubator/dispatcharr/templates/common.yaml b/charts/incubator/dispatcharr/templates/common.yaml new file mode 100644 index 00000000000..b51394e00a4 --- /dev/null +++ b/charts/incubator/dispatcharr/templates/common.yaml @@ -0,0 +1 @@ +{{ include "tc.v1.common.loader.all" . }} diff --git a/charts/incubator/dispatcharr/values.yaml b/charts/incubator/dispatcharr/values.yaml new file mode 100644 index 00000000000..507ba674472 --- /dev/null +++ b/charts/incubator/dispatcharr/values.yaml @@ -0,0 +1,79 @@ +image: + pullPolicy: IfNotPresent + repository: docker.io/dispatcharr/dispatcharr + tag: 0.10.4@sha256:6bdc880e81a818b4b6ddc7e7511743aace0c1a4e0a5e660248561e48cb5f0c13 +securityContext: + container: + readOnlyRootFilesystem: false + runAsUser: 0 + runAsGroup: 0 +service: + main: + ports: + main: + protocol: http + targetPort: 9191 + port: 9191 +workload: + main: + podSpec: + initContainers: + setup-postgres-dirs: + enabled: true + type: init + name: setup-postgres-dirs + image: alpine:3.22 + command: + - /bin/sh + - -c + - | + echo "Setting up PostgreSQL directories..." + + # Create and set permissions for /var/run/postgresql + mkdir -p /var/run/postgresql + chown 999:999 /var/run/postgresql + chmod 2775 /var/run/postgresql + echo "✓ /var/run/postgresql created (999:999, 2775)" + + # Fix permissions for /data/db (restored from backup) + if [ -d /data/db ]; then + echo "Found existing /data/db, fixing permissions..." + # Recursively fix ownership of ALL files inside /data/db + chown -R 999:999 /data/db + # Set directory permissions to 0700 + chmod 0700 /data/db + # Fix permissions on all subdirectories and files + find /data/db -type d -exec chmod 0700 {} \; + find /data/db -type f -exec chmod 0600 {} \; + echo "✓ /data/db permissions fixed recursively (999:999, 0700)" + else + echo "Creating /data/db..." + mkdir -p /data/db + chown 999:999 /data/db + chmod 0700 /data/db + echo "✓ /data/db created (999:999, 0700)" + fi + + # Verify permissions + echo "Checking /data/db permissions:" + ls -la /data/db | head -10 + ls -la /var/run/ | grep postgresql || echo "Warning: postgres dir not found" + echo "Setup complete." + containers: + main: + env: + DISPATCHARR_ENV: aio # Set to 'aio' for all-in-one mode with embedded PostgreSQL. Currently, only 'aio' is supported. + # DISPATCHARR_LOG_LEVEL: info +persistence: + data: + enabled: true + mountPath: /data + targetSelector: + main: + main: + mountPath: /data + setup-postgres-dirs: + mountPath: /data + postgres-run: + enabled: true + mountPath: /var/run/postgresql