diff --git a/jackett/templates/pvc.yaml b/jackett/templates/pvc.yaml deleted file mode 100644 index 9ff76f2..0000000 --- a/jackett/templates/pvc.yaml +++ /dev/null @@ -1,17 +0,0 @@ -{{- if .Values.persistence.enabled }} -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: {{ include "jackett.fullname" . }}-config - labels: - {{- include "jackett.labels" . | nindent 4 }} -spec: - accessModes: - - {{ .Values.persistence.accessMode | quote }} - {{- if .Values.persistence.storageClass }} - storageClassName: {{ .Values.persistence.storageClass | quote }} - {{- end }} - resources: - requests: - storage: {{ .Values.persistence.size | quote }} -{{- end }} \ No newline at end of file diff --git a/jackett/templates/tests/test-connection.yaml b/jackett/templates/tests/test-connection.yaml deleted file mode 100644 index 430ed0d..0000000 --- a/jackett/templates/tests/test-connection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: "{{ include "jackett.fullname" . }}-test-connection" - labels: - {{- include "jackett.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": test -spec: - containers: - - name: wget - image: busybox - command: ['wget'] - args: ['{{ include "jackett.fullname" . }}:{{ .Values.service.port }}'] - restartPolicy: Never diff --git a/jackett/values.yaml b/jackett/values.yaml deleted file mode 100644 index c81c386..0000000 --- a/jackett/values.yaml +++ /dev/null @@ -1,63 +0,0 @@ -# Default values for jackett. -# This is a YAML-formatted file. -# Declare variables to be passed into your templates. - -replicaCount: 1 - -image: - repository: linuxserver/jackett - pullPolicy: IfNotPresent - tag: "latest" - -# Security context for the container -podSecurityContext: - runAsUser: 1000 - runAsGroup: 1000 - fsGroup: 1000 - -# Configurable user and group IDs -securityContext: - PUID: 1000 - PGID: 1000 - -service: - type: ClusterIP - port: 9117 - -# Environment variables -env: - TZ: "UTC" - # Auto-upgrade the application - AUTO_UPDATE: "true" - -# Persistence configuration -persistence: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 1Gi - # Path where Jackett stores its data - mountPath: /config - -ingress: - enabled: false - className: "nginx" - annotations: {} - hosts: - - host: jackett.local - paths: - - path: / - pathType: Prefix - tls: [] - -resources: - limits: - cpu: 1000m - memory: 1Gi - requests: - cpu: 100m - memory: 128Mi - -nodeSelector: {} -tolerations: [] -affinity: {} diff --git a/overseerr/values.yaml b/overseerr/values.yaml index 3199f17..218468d 100644 --- a/overseerr/values.yaml +++ b/overseerr/values.yaml @@ -41,22 +41,20 @@ service: port: 5055 ingress: - enabled: false + enabled: true className: "nginx" - annotations: {} - # kubernetes.io/ingress.class: nginx - # kubernetes.io/tls-acme: "true" - # nginx.ingress.kubernetes.io/rewrite-target: / - # nginx.ingress.kubernetes.io/ssl-redirect: "false" + annotations: + cert-manager.io/cluster-issuer: "letsencrypt" + nginx.ingress.kubernetes.io/ssl-redirect: "true" hosts: - - host: overseerr.local + - host: overseerr.media.mumme-it.de paths: - path: / pathType: Prefix - tls: [] - # - secretName: overseerr-tls - # hosts: - # - overseerr.local + tls: + - secretName: overseerr-tls + hosts: + - overseerr.media.mumme-it.de resources: limits: @@ -80,33 +78,18 @@ autoscaling: minReplicas: 1 maxReplicas: 100 targetCPUUtilizationPercentage: 80 - # targetMemoryUtilizationPercentage: 80 -# Additional volumes on the output Deployment definition. volumes: [] -# - name: foo -# secret: -# secretName: mysecret -# optional: false - -# Additional volumeMounts on the output Deployment definition. volumeMounts: [] -# - name: foo -# mountPath: "/etc/foo" -# readOnly: true nodeSelector: {} - tolerations: [] - affinity: {} # Environment variables env: TZ: "UTC" - # Log level (debug, info, warn, error) LOG_LEVEL: "info" - # Port that overseerr will listen on PORT: "5055" # Persistence configuration diff --git a/qbittorrent/.helmignore b/qbittorrent/.helmignore deleted file mode 100644 index 0e8a0eb..0000000 --- a/qbittorrent/.helmignore +++ /dev/null @@ -1,23 +0,0 @@ -# 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 -*.orig -*~ -# Various IDEs -.project -.idea/ -*.tmproj -.vscode/ diff --git a/qbittorrent/Chart.yaml b/qbittorrent/Chart.yaml deleted file mode 100644 index 353c8d9..0000000 --- a/qbittorrent/Chart.yaml +++ /dev/null @@ -1,24 +0,0 @@ -apiVersion: v2 -name: qbittorrent -description: A Helm chart for Kubernetes - -# A chart can be either an 'application' or a 'library' chart. -# -# Application charts are a collection of templates that can be packaged into versioned archives -# to be deployed. -# -# Library charts provide useful utilities or functions for the chart developer. They're included as -# a dependency of application charts to inject those utilities and functions into the rendering -# pipeline. Library charts do not define any templates and therefore cannot be deployed. -type: application - -# This is the chart version. This version number should be incremented each time you make changes -# to the chart and its templates, including the app version. -# Versions are expected to follow Semantic Versioning (https://semver.org/) -version: 0.1.0 - -# This is the version number of the application being deployed. This version number should be -# incremented each time you make changes to the application. Versions are not expected to -# follow Semantic Versioning. They should reflect the version the application is using. -# It is recommended to use it with quotes. -appVersion: "1.16.0" diff --git a/qbittorrent/templates/NOTES.txt b/qbittorrent/templates/NOTES.txt deleted file mode 100644 index bbc2e5f..0000000 --- a/qbittorrent/templates/NOTES.txt +++ /dev/null @@ -1,22 +0,0 @@ -1. Get the application URL by running these commands: -{{- if .Values.ingress.enabled }} -{{- range $host := .Values.ingress.hosts }} - {{- range .paths }} - http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ .path }} - {{- end }} -{{- end }} -{{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "qbittorrent.fullname" . }}) - export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") - echo http://$NODE_IP:$NODE_PORT -{{- else if contains "LoadBalancer" .Values.service.type }} - NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "qbittorrent.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "qbittorrent.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") - echo http://$SERVICE_IP:{{ .Values.service.port }} -{{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "qbittorrent.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") - export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") - echo "Visit http://127.0.0.1:8080 to use your application" - kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT -{{- end }} diff --git a/qbittorrent/templates/_helpers.tpl b/qbittorrent/templates/_helpers.tpl deleted file mode 100644 index fbc1872..0000000 --- a/qbittorrent/templates/_helpers.tpl +++ /dev/null @@ -1,62 +0,0 @@ -{{/* -Expand the name of the chart. -*/}} -{{- define "qbittorrent.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "qbittorrent.fullname" -}} -{{- if .Values.fullnameOverride }} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- $name := default .Chart.Name .Values.nameOverride }} -{{- if contains $name .Release.Name }} -{{- .Release.Name | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} -{{- end }} -{{- end }} -{{- end }} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "qbittorrent.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Common labels -*/}} -{{- define "qbittorrent.labels" -}} -helm.sh/chart: {{ include "qbittorrent.chart" . }} -{{ include "qbittorrent.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end }} - -{{/* -Selector labels -*/}} -{{- define "qbittorrent.selectorLabels" -}} -app.kubernetes.io/name: {{ include "qbittorrent.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end }} - -{{/* -Create the name of the service account to use -*/}} -{{- define "qbittorrent.serviceAccountName" -}} -{{- if .Values.serviceAccount.create }} -{{- default (include "qbittorrent.fullname" .) .Values.serviceAccount.name }} -{{- else }} -{{- default "default" .Values.serviceAccount.name }} -{{- end }} -{{- end }} diff --git a/qbittorrent/templates/deployment.yaml b/qbittorrent/templates/deployment.yaml deleted file mode 100644 index a0ff6f7..0000000 --- a/qbittorrent/templates/deployment.yaml +++ /dev/null @@ -1,84 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "qbittorrent.fullname" . }} - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} -spec: - replicas: {{ .Values.replicaCount }} - selector: - matchLabels: - {{- include "qbittorrent.selectorLabels" . | nindent 6 }} - template: - metadata: - labels: - {{- include "qbittorrent.selectorLabels" . | nindent 8 }} - spec: - {{- with .Values.imagePullSecrets }} - imagePullSecrets: - {{- toYaml . | nindent 8 }} - {{- end }} - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - containers: - - name: {{ .Chart.Name }} - image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" - imagePullPolicy: {{ .Values.image.pullPolicy }} - env: - - name: TZ - value: {{ .Values.env.TZ | quote }} - - name: PUID - value: {{ .Values.securityContext.PUID | quote }} - - name: PGID - value: {{ .Values.securityContext.PGID | quote }} - - name: WEBUI_PORT - value: {{ .Values.env.WEBUI_PORT | quote }} - ports: - - name: webui - containerPort: {{ .Values.service.webui.port }} - protocol: TCP - - name: bittorrent - containerPort: {{ .Values.service.bittorrent.port }} - protocol: {{ .Values.service.bittorrent.protocol }} - volumeMounts: - - name: config - mountPath: {{ .Values.persistence.config.mountPath }} - - name: downloads - mountPath: {{ .Values.persistence.downloads.mountPath }} - livenessProbe: - httpGet: - path: / - port: webui - readinessProbe: - httpGet: - path: / - port: webui - resources: - {{- toYaml .Values.resources | nindent 12 }} - volumes: - - name: config - {{- if .Values.persistence.config.enabled }} - persistentVolumeClaim: - claimName: {{ include "qbittorrent.fullname" . }}-config - {{- else }} - emptyDir: {} - {{- end }} - - name: downloads - {{- if .Values.persistence.downloads.enabled }} - persistentVolumeClaim: - claimName: {{ include "qbittorrent.fullname" . }}-downloads - {{- else }} - emptyDir: {} - {{- end }} - {{- with .Values.nodeSelector }} - nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: - {{- toYaml . | nindent 8 }} - {{- end }} diff --git a/qbittorrent/templates/ingress.yaml b/qbittorrent/templates/ingress.yaml deleted file mode 100644 index 81b633e..0000000 --- a/qbittorrent/templates/ingress.yaml +++ /dev/null @@ -1,61 +0,0 @@ -{{- if .Values.ingress.enabled -}} -{{- $fullName := include "qbittorrent.fullname" . -}} -{{- $svcPort := .Values.service.port -}} -{{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} - {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} - {{- $_ := set .Values.ingress.annotations "kubernetes.io/ingress.class" .Values.ingress.className}} - {{- end }} -{{- end }} -{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1 -{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} -apiVersion: networking.k8s.io/v1beta1 -{{- else -}} -apiVersion: extensions/v1beta1 -{{- end }} -kind: Ingress -metadata: - name: {{ $fullName }} - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} - {{- with .Values.ingress.annotations }} - annotations: - {{- toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if and .Values.ingress.className (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }} - ingressClassName: {{ .Values.ingress.className }} - {{- end }} - {{- if .Values.ingress.tls }} - tls: - {{- range .Values.ingress.tls }} - - hosts: - {{- range .hosts }} - - {{ . | quote }} - {{- end }} - secretName: {{ .secretName }} - {{- end }} - {{- end }} - rules: - {{- range .Values.ingress.hosts }} - - host: {{ .host | quote }} - http: - paths: - {{- range .paths }} - - path: {{ .path }} - {{- if and .pathType (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }} - pathType: {{ .pathType }} - {{- end }} - backend: - {{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }} - service: - name: {{ $fullName }} - port: - number: {{ $svcPort }} - {{- else }} - serviceName: {{ $fullName }} - servicePort: {{ $svcPort }} - {{- end }} - {{- end }} - {{- end }} -{{- end }} diff --git a/qbittorrent/templates/pvc.yaml b/qbittorrent/templates/pvc.yaml deleted file mode 100644 index 57ea03f..0000000 --- a/qbittorrent/templates/pvc.yaml +++ /dev/null @@ -1,35 +0,0 @@ -{{- if .Values.persistence.config.enabled }} -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: {{ include "qbittorrent.fullname" . }}-config - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} -spec: - accessModes: - - {{ .Values.persistence.config.accessMode | quote }} - {{- if .Values.persistence.config.storageClass }} - storageClassName: {{ .Values.persistence.config.storageClass | quote }} - {{- end }} - resources: - requests: - storage: {{ .Values.persistence.config.size | quote }} -{{- end }} ---- -{{- if .Values.persistence.downloads.enabled }} -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: {{ include "qbittorrent.fullname" . }}-downloads - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} -spec: - accessModes: - - {{ .Values.persistence.downloads.accessMode | quote }} - {{- if .Values.persistence.downloads.storageClass }} - storageClassName: {{ .Values.persistence.downloads.storageClass | quote }} - {{- end }} - resources: - requests: - storage: {{ .Values.persistence.downloads.size | quote }} -{{- end }} \ No newline at end of file diff --git a/qbittorrent/templates/service.yaml b/qbittorrent/templates/service.yaml deleted file mode 100644 index c4853a8..0000000 --- a/qbittorrent/templates/service.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: {{ include "qbittorrent.fullname" . }} - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} -spec: - type: {{ .Values.service.type }} - ports: - - port: {{ .Values.service.webui.port }} - targetPort: webui - protocol: TCP - name: webui - - port: {{ .Values.service.bittorrent.port }} - targetPort: bittorrent - protocol: {{ .Values.service.bittorrent.protocol }} - name: bittorrent - selector: - {{- include "qbittorrent.selectorLabels" . | nindent 4 }} diff --git a/qbittorrent/templates/tests/test-connection.yaml b/qbittorrent/templates/tests/test-connection.yaml deleted file mode 100644 index b504f5a..0000000 --- a/qbittorrent/templates/tests/test-connection.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: "{{ include "qbittorrent.fullname" . }}-test-connection" - labels: - {{- include "qbittorrent.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": test -spec: - containers: - - name: wget - image: busybox - command: ['wget'] - args: ['{{ include "qbittorrent.fullname" . }}:{{ .Values.service.port }}'] - restartPolicy: Never diff --git a/radarr/templates/deployment.yaml b/radarr/templates/deployment.yaml index 7392803..dad263a 100644 --- a/radarr/templates/deployment.yaml +++ b/radarr/templates/deployment.yaml @@ -5,14 +5,23 @@ metadata: labels: {{- include "radarr.labels" . | nindent 4 }} spec: + {{- if not .Values.autoscaling.enabled }} replicas: {{ .Values.replicaCount }} + {{- end }} selector: matchLabels: {{- include "radarr.selectorLabels" . | nindent 6 }} template: metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} labels: - {{- include "radarr.selectorLabels" . | nindent 8 }} + {{- include "radarr.labels" . | nindent 8 }} + {{- with .Values.podLabels }} + {{- toYaml . | nindent 8 }} + {{- end }} spec: {{- with .Values.imagePullSecrets }} imagePullSecrets: @@ -22,62 +31,37 @@ spec: {{- toYaml .Values.podSecurityContext | nindent 8 }} containers: - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: - - name: TZ - value: {{ .Values.env.TZ | quote }} - - name: PUID - value: {{ .Values.securityContext.PUID | quote }} - - name: PGID - value: {{ .Values.securityContext.PGID | quote }} + {{- range .Values.env }} + - name: {{ .name }} + value: {{ .value | quote }} + {{- end }} ports: - name: http containerPort: {{ .Values.service.port }} protocol: TCP + livenessProbe: + {{- toYaml .Values.livenessProbe | nindent 12 }} + readinessProbe: + {{- toYaml .Values.readinessProbe | nindent 12 }} + resources: + {{- toYaml .Values.resources | nindent 12 }} volumeMounts: - name: config mountPath: {{ .Values.persistence.config.mountPath }} - - name: movies - mountPath: {{ .Values.persistence.movies.mountPath }} - - name: downloads - mountPath: {{ .Values.persistence.downloads.mountPath }} - livenessProbe: - httpGet: - path: / - port: http - readinessProbe: - httpGet: - path: / - port: http - resources: - {{- toYaml .Values.resources | nindent 12 }} + - name: media + mountPath: {{ .Values.persistence.media.mountPath }} volumes: - name: config - {{- if .Values.persistence.config.enabled }} persistentVolumeClaim: - claimName: {{ include "radarr.fullname" . }}-config - {{- else }} - emptyDir: {} - {{- end }} - - name: movies - {{- if .Values.persistence.movies.enabled }} + claimName: {{ .Values.persistence.config.claimName }} + - name: media persistentVolumeClaim: - claimName: {{ include "radarr.fullname" . }}-movies - {{- else }} - emptyDir: {} - {{- end }} - - name: downloads - {{- if .Values.persistence.downloads.enabled }} - persistentVolumeClaim: - {{- if .Values.persistence.downloads.existingClaim }} - claimName: {{ .Values.persistence.downloads.existingClaim }} - {{- else }} - claimName: {{ include "radarr.fullname" . }}-downloads - {{- end }} - {{- else }} - emptyDir: {} - {{- end }} + claimName: {{ .Values.persistence.media.claimName }} {{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} diff --git a/radarr/templates/pvc.yaml b/radarr/templates/pvc.yaml index 906861e..391c4fe 100644 --- a/radarr/templates/pvc.yaml +++ b/radarr/templates/pvc.yaml @@ -1,53 +1,27 @@ -{{- if .Values.persistence.config.enabled }} apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: {{ include "radarr.fullname" . }}-config + name: {{ .Values.persistence.config.claimName }} labels: {{- include "radarr.labels" . | nindent 4 }} spec: accessModes: - - {{ .Values.persistence.config.accessMode | quote }} - {{- if .Values.persistence.config.storageClass }} - storageClassName: {{ .Values.persistence.config.storageClass | quote }} - {{- end }} + - ReadWriteOnce resources: requests: - storage: {{ .Values.persistence.config.size | quote }} -{{- end }} + storage: 1Gi --- -{{- if .Values.persistence.movies.enabled }} +{{- if not (lookup "v1" "PersistentVolumeClaim" .Release.Namespace "media-storage") }} apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: {{ include "radarr.fullname" . }}-movies + name: media-storage labels: {{- include "radarr.labels" . | nindent 4 }} spec: accessModes: - - {{ .Values.persistence.movies.accessMode | quote }} - {{- if .Values.persistence.movies.storageClass }} - storageClassName: {{ .Values.persistence.movies.storageClass | quote }} - {{- end }} + - ReadWriteOnce resources: requests: - storage: {{ .Values.persistence.movies.size | quote }} -{{- end }} ---- -{{- if and .Values.persistence.downloads.enabled (not .Values.persistence.downloads.existingClaim) }} -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: {{ include "radarr.fullname" . }}-downloads - labels: - {{- include "radarr.labels" . | nindent 4 }} -spec: - accessModes: - - {{ .Values.persistence.downloads.accessMode | quote }} - {{- if .Values.persistence.downloads.storageClass }} - storageClassName: {{ .Values.persistence.downloads.storageClass | quote }} - {{- end }} - resources: - requests: - storage: {{ .Values.persistence.downloads.size | quote }} + storage: 500Gi {{- end }} \ No newline at end of file diff --git a/radarr/values.yaml b/radarr/values.yaml index 6c8b955..08d9dd7 100644 --- a/radarr/values.yaml +++ b/radarr/values.yaml @@ -15,9 +15,9 @@ fullnameOverride: "" serviceAccount: # Specifies whether a service account should be created - create: true + create: false # Automatically mount a ServiceAccount's API credentials? - automount: true + automount: false # Annotations to add to the service account annotations: {} # The name of the service account to use. @@ -28,28 +28,37 @@ podAnnotations: {} podLabels: {} podSecurityContext: - runAsUser: 1000 - runAsGroup: 1000 - fsGroup: 1000 + runAsUser: 0 + runAsGroup: 0 + fsGroup: 0 securityContext: - PUID: 1000 - PGID: 1000 + privileged: true + capabilities: + add: + - CHOWN + - FOWNER + - SETUID + - SETGID service: type: ClusterIP port: 7878 ingress: - enabled: false + enabled: true className: "nginx" - annotations: {} + annotations: + cert-manager.io/cluster-issuer: "letsencrypt" hosts: - - host: radarr.local + - host: radarr.media.mumme-it.de paths: - path: / pathType: Prefix - tls: [] + tls: + - hosts: + - radarr.media.mumme-it.de + secretName: radarr-tls resources: limits: @@ -96,27 +105,18 @@ affinity: {} # Environment variables env: - TZ: "UTC" + - name: TZ + value: "Europe/Berlin" + - name: PUID + value: "0" + - name: PGID + value: "0" # Persistence configuration persistence: config: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 1Gi + claimName: radarr-config mountPath: /config - movies: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 100Gi - mountPath: /movies - downloads: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 20Gi - mountPath: /downloads - # If you want to use existing PVC from qBittorrent - existingClaim: "" + media: + claimName: media-storage + mountPath: /media diff --git a/jackett/.helmignore b/readarr/.helmignore similarity index 97% rename from jackett/.helmignore rename to readarr/.helmignore index 0e8a0eb..84fa94a 100644 --- a/jackett/.helmignore +++ b/readarr/.helmignore @@ -20,4 +20,4 @@ .project .idea/ *.tmproj -.vscode/ +.vscode/ \ No newline at end of file diff --git a/jackett/Chart.yaml b/readarr/Chart.yaml similarity index 96% rename from jackett/Chart.yaml rename to readarr/Chart.yaml index 71d856e..596f618 100644 --- a/jackett/Chart.yaml +++ b/readarr/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -name: jackett +name: readarr description: A Helm chart for Kubernetes # A chart can be either an 'application' or a 'library' chart. @@ -21,4 +21,4 @@ version: 0.1.0 # incremented each time you make changes to the application. Versions are not expected to # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. -appVersion: "1.16.0" +appVersion: "0.3.0" \ No newline at end of file diff --git a/jackett/templates/NOTES.txt b/readarr/templates/NOTES.txt similarity index 86% rename from jackett/templates/NOTES.txt rename to readarr/templates/NOTES.txt index ac681da..2cbf110 100644 --- a/jackett/templates/NOTES.txt +++ b/readarr/templates/NOTES.txt @@ -6,17 +6,17 @@ {{- end }} {{- end }} {{- else if contains "NodePort" .Values.service.type }} - export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "jackett.fullname" . }}) + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "readarr.fullname" . }}) export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") echo http://$NODE_IP:$NODE_PORT {{- else if contains "LoadBalancer" .Values.service.type }} NOTE: It may take a few minutes for the LoadBalancer IP to be available. - You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "jackett.fullname" . }}' - export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "jackett.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "readarr.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "readarr.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") echo http://$SERVICE_IP:{{ .Values.service.port }} {{- else if contains "ClusterIP" .Values.service.type }} - export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "jackett.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "readarr.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}") echo "Visit http://127.0.0.1:8080 to use your application" kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT -{{- end }} +{{- end }} \ No newline at end of file diff --git a/jackett/templates/_helpers.tpl b/readarr/templates/_helpers.tpl similarity index 75% rename from jackett/templates/_helpers.tpl rename to readarr/templates/_helpers.tpl index 26aeb91..7baceeb 100644 --- a/jackett/templates/_helpers.tpl +++ b/readarr/templates/_helpers.tpl @@ -1,7 +1,7 @@ {{/* Expand the name of the chart. */}} -{{- define "jackett.name" -}} +{{- define "readarr.name" -}} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} {{- end }} @@ -10,7 +10,7 @@ Create a default fully qualified app name. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). If release name contains chart name it will be used as a full name. */}} -{{- define "jackett.fullname" -}} +{{- define "readarr.fullname" -}} {{- if .Values.fullnameOverride }} {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} {{- else }} @@ -26,16 +26,16 @@ If release name contains chart name it will be used as a full name. {{/* Create chart name and version as used by the chart label. */}} -{{- define "jackett.chart" -}} +{{- define "readarr.chart" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} {{- end }} {{/* Common labels */}} -{{- define "jackett.labels" -}} -helm.sh/chart: {{ include "jackett.chart" . }} -{{ include "jackett.selectorLabels" . }} +{{- define "readarr.labels" -}} +helm.sh/chart: {{ include "readarr.chart" . }} +{{ include "readarr.selectorLabels" . }} {{- if .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} {{- end }} @@ -45,18 +45,18 @@ app.kubernetes.io/managed-by: {{ .Release.Service }} {{/* Selector labels */}} -{{- define "jackett.selectorLabels" -}} -app.kubernetes.io/name: {{ include "jackett.name" . }} +{{- define "readarr.selectorLabels" -}} +app.kubernetes.io/name: {{ include "readarr.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{/* Create the name of the service account to use */}} -{{- define "jackett.serviceAccountName" -}} +{{- define "readarr.serviceAccountName" -}} {{- if .Values.serviceAccount.create }} -{{- default (include "jackett.fullname" .) .Values.serviceAccount.name }} +{{- default (include "readarr.fullname" .) .Values.serviceAccount.name }} {{- else }} {{- default "default" .Values.serviceAccount.name }} {{- end }} -{{- end }} +{{- end }} \ No newline at end of file diff --git a/jackett/templates/deployment.yaml b/readarr/templates/deployment.yaml similarity index 53% rename from jackett/templates/deployment.yaml rename to readarr/templates/deployment.yaml index d21b437..5528621 100644 --- a/jackett/templates/deployment.yaml +++ b/readarr/templates/deployment.yaml @@ -1,18 +1,27 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: {{ include "jackett.fullname" . }} + name: {{ include "readarr.fullname" . }} labels: - {{- include "jackett.labels" . | nindent 4 }} + {{- include "readarr.labels" . | nindent 4 }} spec: + {{- if not .Values.autoscaling.enabled }} replicas: {{ .Values.replicaCount }} + {{- end }} selector: matchLabels: - {{- include "jackett.selectorLabels" . | nindent 6 }} + {{- include "readarr.selectorLabels" . | nindent 6 }} template: metadata: + {{- with .Values.podAnnotations }} + annotations: + {{- toYaml . | nindent 8 }} + {{- end }} labels: - {{- include "jackett.selectorLabels" . | nindent 8 }} + {{- include "readarr.labels" . | nindent 8 }} + {{- with .Values.podLabels }} + {{- toYaml . | nindent 8 }} + {{- end }} spec: {{- with .Values.imagePullSecrets }} imagePullSecrets: @@ -22,42 +31,37 @@ spec: {{- toYaml .Values.podSecurityContext | nindent 8 }} containers: - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.image.pullPolicy }} env: - - name: TZ - value: {{ .Values.env.TZ | quote }} - - name: PUID - value: {{ .Values.securityContext.PUID | quote }} - - name: PGID - value: {{ .Values.securityContext.PGID | quote }} - - name: AUTO_UPDATE - value: {{ .Values.env.AUTO_UPDATE | quote }} + {{- range .Values.env }} + - name: {{ .name }} + value: {{ .value | quote }} + {{- end }} ports: - name: http containerPort: {{ .Values.service.port }} protocol: TCP - volumeMounts: - - name: config - mountPath: {{ .Values.persistence.mountPath }} livenessProbe: - httpGet: - path: / - port: http + {{- toYaml .Values.livenessProbe | nindent 12 }} readinessProbe: - httpGet: - path: / - port: http + {{- toYaml .Values.readinessProbe | nindent 12 }} resources: {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: config + mountPath: {{ .Values.persistence.config.mountPath }} + - name: media + mountPath: {{ .Values.persistence.media.mountPath }} volumes: - name: config - {{- if .Values.persistence.enabled }} persistentVolumeClaim: - claimName: {{ include "jackett.fullname" . }}-config - {{- else }} - emptyDir: {} - {{- end }} + claimName: {{ .Values.persistence.config.claimName }} + - name: media + persistentVolumeClaim: + claimName: {{ .Values.persistence.media.claimName }} {{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} @@ -69,4 +73,4 @@ spec: {{- with .Values.tolerations }} tolerations: {{- toYaml . | nindent 8 }} - {{- end }} + {{- end }} \ No newline at end of file diff --git a/jackett/templates/ingress.yaml b/readarr/templates/ingress.yaml similarity index 94% rename from jackett/templates/ingress.yaml rename to readarr/templates/ingress.yaml index 161d261..faed98d 100644 --- a/jackett/templates/ingress.yaml +++ b/readarr/templates/ingress.yaml @@ -1,5 +1,5 @@ {{- if .Values.ingress.enabled -}} -{{- $fullName := include "jackett.fullname" . -}} +{{- $fullName := include "readarr.fullname" . -}} {{- $svcPort := .Values.service.port -}} {{- if and .Values.ingress.className (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) }} {{- if not (hasKey .Values.ingress.annotations "kubernetes.io/ingress.class") }} @@ -17,7 +17,7 @@ kind: Ingress metadata: name: {{ $fullName }} labels: - {{- include "jackett.labels" . | nindent 4 }} + {{- include "readarr.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} annotations: {{- toYaml . | nindent 4 }} @@ -58,4 +58,4 @@ spec: {{- end }} {{- end }} {{- end }} -{{- end }} +{{- end }} \ No newline at end of file diff --git a/readarr/templates/pvc.yaml b/readarr/templates/pvc.yaml new file mode 100644 index 0000000..f48f8fe --- /dev/null +++ b/readarr/templates/pvc.yaml @@ -0,0 +1,27 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: {{ .Values.persistence.config.claimName }} + labels: + {{- include "readarr.labels" . | nindent 4 }} +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi +--- +{{- if not (lookup "v1" "PersistentVolumeClaim" .Release.Namespace "media-storage") }} +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: media-storage + labels: + {{- include "readarr.labels" . | nindent 4 }} +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 500Gi +{{- end }} \ No newline at end of file diff --git a/jackett/templates/service.yaml b/readarr/templates/service.yaml similarity index 58% rename from jackett/templates/service.yaml rename to readarr/templates/service.yaml index 68eee14..31cdf41 100644 --- a/jackett/templates/service.yaml +++ b/readarr/templates/service.yaml @@ -1,9 +1,9 @@ apiVersion: v1 kind: Service metadata: - name: {{ include "jackett.fullname" . }} + name: {{ include "readarr.fullname" . }} labels: - {{- include "jackett.labels" . | nindent 4 }} + {{- include "readarr.labels" . | nindent 4 }} spec: type: {{ .Values.service.type }} ports: @@ -12,4 +12,4 @@ spec: protocol: TCP name: http selector: - {{- include "jackett.selectorLabels" . | nindent 4 }} + {{- include "readarr.selectorLabels" . | nindent 4 }} \ No newline at end of file diff --git a/qbittorrent/values.yaml b/readarr/values.yaml similarity index 68% rename from qbittorrent/values.yaml rename to readarr/values.yaml index d096996..38ab377 100644 --- a/qbittorrent/values.yaml +++ b/readarr/values.yaml @@ -1,11 +1,11 @@ -# Default values for qbittorrent. +# Default values for readarr. # This is a YAML-formatted file. # Declare variables to be passed into your templates. replicaCount: 1 image: - repository: linuxserver/qbittorrent + repository: linuxserver/readarr pullPolicy: IfNotPresent tag: "latest" @@ -15,9 +15,9 @@ fullnameOverride: "" serviceAccount: # Specifies whether a service account should be created - create: true + create: false # Automatically mount a ServiceAccount's API credentials? - automount: true + automount: false # Annotations to add to the service account annotations: {} # The name of the service account to use. @@ -28,58 +28,42 @@ podAnnotations: {} podLabels: {} podSecurityContext: - runAsUser: 1000 - runAsGroup: 1000 - fsGroup: 1000 + runAsUser: 0 + runAsGroup: 0 + fsGroup: 0 securityContext: - PUID: 1000 - PGID: 1000 + privileged: true + capabilities: + add: + - CHOWN + - FOWNER + - SETUID + - SETGID service: type: ClusterIP - webui: - port: 8080 - bittorrent: - port: 6881 - protocol: TCP - -# Environment variables -env: - TZ: "UTC" - # WebUI port - WEBUI_PORT: "8080" - -# Persistence configuration -persistence: - config: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 1Gi - mountPath: /config - downloads: - enabled: true - storageClass: "" - accessMode: ReadWriteOnce - size: 20Gi - mountPath: /downloads + port: 8787 ingress: - enabled: false + enabled: true className: "nginx" - annotations: {} + annotations: + cert-manager.io/cluster-issuer: "letsencrypt" hosts: - - host: qbittorrent.local + - host: readarr.media.mumme-it.de paths: - path: / pathType: Prefix - tls: [] + tls: + - hosts: + - readarr.media.mumme-it.de + secretName: readarr-tls resources: limits: - cpu: 2000m - memory: 2Gi + cpu: 1000m + memory: 1Gi requests: cpu: 200m memory: 256Mi @@ -118,3 +102,21 @@ nodeSelector: {} tolerations: [] affinity: {} + +# Environment variables +env: + - name: TZ + value: "Europe/Berlin" + - name: PUID + value: "0" + - name: PGID + value: "0" + +# Persistence configuration +persistence: + config: + claimName: readarr-config + mountPath: /config + media: + claimName: media-storage + mountPath: /media \ No newline at end of file diff --git a/sabnzbd/templates/deployment.yaml b/sabnzbd/templates/deployment.yaml index 0b4e7d6..82af9ac 100644 --- a/sabnzbd/templates/deployment.yaml +++ b/sabnzbd/templates/deployment.yaml @@ -30,17 +30,12 @@ spec: volumeMounts: - name: config mountPath: {{ .Values.persistence.config.mountPath }} - - name: downloads - mountPath: {{ .Values.persistence.downloads.mountPath }} - - name: incomplete - mountPath: {{ .Values.persistence.incomplete.mountPath }} + - name: media + mountPath: {{ .Values.persistence.media.mountPath }} volumes: - name: config persistentVolumeClaim: claimName: {{ .Values.persistence.config.claimName }} - - name: downloads + - name: media persistentVolumeClaim: - claimName: {{ .Values.persistence.downloads.claimName }} - - name: incomplete - persistentVolumeClaim: - claimName: {{ .Values.persistence.incomplete.claimName }} + claimName: {{ .Values.persistence.media.claimName }} diff --git a/sabnzbd/templates/pvc.yaml b/sabnzbd/templates/pvc.yaml index 01a5689..cf7b202 100644 --- a/sabnzbd/templates/pvc.yaml +++ b/sabnzbd/templates/pvc.yaml @@ -1,7 +1,9 @@ apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: sabnzbd-config + name: {{ .Values.persistence.config.claimName }} + labels: + {{- include "sabnzbd.labels" . | nindent 4 }} spec: accessModes: - ReadWriteOnce @@ -9,24 +11,17 @@ spec: requests: storage: 1Gi --- +{{- if not (lookup "v1" "PersistentVolumeClaim" .Release.Namespace "media-storage") }} apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: media-downloads + name: media-storage + labels: + {{- include "sabnzbd.labels" . | nindent 4 }} spec: accessModes: - ReadWriteOnce resources: requests: - storage: 100Gi ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: sabnzbd-incomplete -spec: - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 100Gi \ No newline at end of file + storage: 500Gi +{{- end }} \ No newline at end of file diff --git a/sabnzbd/values.yaml b/sabnzbd/values.yaml index 4b9e10e..abed3e2 100644 --- a/sabnzbd/values.yaml +++ b/sabnzbd/values.yaml @@ -27,16 +27,19 @@ serviceAccount: podAnnotations: {} podLabels: {} -podSecurityContext: {} - # fsGroup: 2000 +podSecurityContext: + runAsUser: 0 + runAsGroup: 0 + fsGroup: 0 -securityContext: {} - # capabilities: - # drop: - # - ALL - # readOnlyRootFilesystem: true - # runAsNonRoot: true - # runAsUser: 1000 +securityContext: + privileged: true + capabilities: + add: + - CHOWN + - FOWNER + - SETUID + - SETGID service: type: ClusterIP @@ -58,17 +61,13 @@ ingress: # hosts: # - chart-example.local -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - # limits: - # cpu: 100m - # memory: 128Mi - # requests: - # cpu: 100m - # memory: 128Mi +resources: + limits: + cpu: 2000m + memory: 2Gi + requests: + cpu: 500m + memory: 512Mi livenessProbe: httpGet: @@ -112,14 +111,21 @@ env: value: "0" - name: PGID value: "0" + - name: PYTHON_EGG_CACHE + value: "/config/.python-eggs" + - name: PYTHONUNBUFFERED + value: "1" + - name: SAB_DIRECT_UNPACK + value: "1" + - name: SAB_DOWNLOAD_DIR + value: "/media/incomplete" + - name: SAB_COMPLETE_DIR + value: "/media/downloads" persistence: config: claimName: sabnzbd-config mountPath: /config - downloads: - claimName: media-downloads - mountPath: /downloads - incomplete: - claimName: sabnzbd-incomplete - mountPath: /incomplete-downloads + media: + claimName: media-storage + mountPath: /media diff --git a/sonarr/templates/deployment.yaml b/sonarr/templates/deployment.yaml index 5772692..a7ea084 100644 --- a/sonarr/templates/deployment.yaml +++ b/sonarr/templates/deployment.yaml @@ -36,10 +36,8 @@ spec: volumeMounts: - name: config mountPath: {{ .Values.persistence.config.mountPath }} - - name: tv - mountPath: {{ .Values.persistence.tv.mountPath }} - - name: downloads - mountPath: {{ .Values.persistence.downloads.mountPath }} + - name: media + mountPath: {{ .Values.persistence.media.mountPath }} livenessProbe: httpGet: path: / @@ -54,12 +52,9 @@ spec: - name: config persistentVolumeClaim: claimName: {{ .Values.persistence.config.claimName }} - - name: tv + - name: media persistentVolumeClaim: - claimName: {{ .Values.persistence.tv.claimName }} - - name: downloads - persistentVolumeClaim: - claimName: {{ .Values.persistence.downloads.claimName }} + claimName: {{ .Values.persistence.media.claimName }} {{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} diff --git a/sonarr/templates/pvc.yaml b/sonarr/templates/pvc.yaml index 417df5b..9446306 100644 --- a/sonarr/templates/pvc.yaml +++ b/sonarr/templates/pvc.yaml @@ -1,7 +1,9 @@ apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: sonarr-config + name: {{ .Values.persistence.config.claimName }} + labels: + {{- include "sonarr.labels" . | nindent 4 }} spec: accessModes: - ReadWriteOnce @@ -9,13 +11,17 @@ spec: requests: storage: 1Gi --- +{{- if not (lookup "v1" "PersistentVolumeClaim" .Release.Namespace "media-storage") }} apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: sonarr-tv + name: media-storage + labels: + {{- include "sonarr.labels" . | nindent 4 }} spec: accessModes: - ReadWriteOnce resources: requests: - storage: 100Gi \ No newline at end of file + storage: 500Gi +{{- end }} \ No newline at end of file diff --git a/sonarr/values.yaml b/sonarr/values.yaml index 75e389a..a36051d 100644 --- a/sonarr/values.yaml +++ b/sonarr/values.yaml @@ -62,11 +62,11 @@ ingress: resources: limits: + cpu: 4000m + memory: 4Gi + requests: cpu: 1000m memory: 1Gi - requests: - cpu: 200m - memory: 256Mi livenessProbe: httpGet: @@ -82,25 +82,12 @@ autoscaling: minReplicas: 1 maxReplicas: 100 targetCPUUtilizationPercentage: 80 - # targetMemoryUtilizationPercentage: 80 -# Additional volumes on the output Deployment definition. volumes: [] -# - name: foo -# secret: -# secretName: mysecret -# optional: false - -# Additional volumeMounts on the output Deployment definition. volumeMounts: [] -# - name: foo -# mountPath: "/etc/foo" -# readOnly: true nodeSelector: {} - tolerations: [] - affinity: {} # Environment variables @@ -117,9 +104,6 @@ persistence: config: claimName: sonarr-config mountPath: /config - tv: - claimName: sonarr-tv - mountPath: /tv - downloads: - claimName: media-downloads - mountPath: /downloads + media: + claimName: media-storage + mountPath: /media