--- # yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: &app sonarr spec: interval: 30m chart: spec: chart: app-template version: 3.6.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system install: remediation: retries: 3 upgrade: cleanupOnFail: true remediation: strategy: rollback retries: 3 values: controllers: sonarr: annotations: reloader.stakater.com/auto: "true" initContainers: init-db: image: repository: ghcr.io/onedr0p/postgres-init tag: 16.6@sha256:35353a77777ee8f634d0f3945f495b4a40065134b8619e0d18bd49b0ee9c855b envFrom: &envFrom - secretRef: name: *app containers: app: image: repository: ghcr.io/onedr0p/sonarr-develop tag: rolling@sha256:371517bc99a5c755bea0c73e8e9fcd23ae436a593fb4a116368947c9c9182977 env: TZ: "${TIMEZONE}" SONARR__APP__INSTANCENAME: Sonarr SONARR__APP__THEME: dark SONARR__AUTH__METHOD: External SONARR__AUTH__REQUIRED: DisabledForLocalAddresses SONARR__LOG__DBENABLED: "False" SONARR__LOG__LEVEL: info SONARR__SERVER__PORT: &port 80 SONARR__UPDATE__BRANCH: develop envFrom: *envFrom probes: liveness: &probes enabled: true custom: true spec: httpGet: path: /ping port: *port initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 3 failureThreshold: 5 readiness: *probes startup: enabled: false securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true capabilities: { drop: ["ALL"] } resources: requests: cpu: 10m memory: 256Mi limits: memory: 4Gi defaultPodOptions: securityContext: runAsNonRoot: true runAsUser: 568 runAsGroup: 568 fsGroup: 568 fsGroupChangePolicy: OnRootMismatch seccompProfile: { type: RuntimeDefault } service: app: controller: *app ports: http: port: *port ingress: app: className: internal annotations: external-dns.alpha.kubernetes.io/target: internal.${SECRET_DOMAIN} gethomepage.dev/enabled: "true" gethomepage.dev/group: Downloads gethomepage.dev/name: Sonarr gethomepage.dev/icon: sonarr.png gethomepage.dev/description: TV Downloads gethomepage.dev/widget.type: sonarr gethomepage.dev/widget.url: http://sonarr.downloads gethomepage.dev/widget.key: "{{ `{{HOMEPAGE_VAR_SONARR_TOKEN}}` }}" nginx.ingress.kubernetes.io/configuration-snippet: ${THEME_PARK_SNIPPET} hosts: - host: &host "{{ .Release.Name }}.${SECRET_INTERNAL_DOMAIN}" paths: - path: / service: identifier: app port: http tls: - hosts: - *host secretName: "{{ .Release.Name }}-tls" persistence: config: enabled: true type: nfs server: 192.168.1.68 path: /mnt/user/k3s/config/sonarr tmp: type: emptyDir media: enabled: true type: nfs server: 192.168.1.68 path: /mnt/user/shows downloads: existingClaim: cifs-downloads advancedMounts: sonarr: app: - path: /downloads/downloaded_tv readOnly: false subPath: sabnzbd/downloaded_tv - path: /downloads/tv-sonarr readOnly: false subPath: flood/tv-sonarr