From 173515297310600aa270e185aae61544fe4c220e Mon Sep 17 00:00:00 2001 From: Jon Baker Date: Wed, 27 Nov 2024 20:47:34 +1100 Subject: [PATCH] remove download namespace --- .../downloads/autobrr/app/externalsecret.yaml | 44 ---- .../downloads/autobrr/app/helmrelease.yaml | 91 --------- .../downloads/autobrr/app/kustomization.yaml | 7 - kubernetes/apps/downloads/autobrr/ks.yaml | 26 --- .../downloads/bazarr/app/externalsecret.yaml | 19 -- .../downloads/bazarr/app/helmrelease.yaml | 97 --------- .../downloads/bazarr/app/kustomization.yaml | 8 - kubernetes/apps/downloads/bazarr/ks.yaml | 28 --- .../cross-seed/app/externalsecret.yaml | 75 ------- .../downloads/cross-seed/app/helmrelease.yaml | 96 --------- .../cross-seed/app/kustomization.yaml | 7 - kubernetes/apps/downloads/cross-seed/ks.yaml | 23 --- kubernetes/apps/downloads/kustomization.yaml | 17 -- kubernetes/apps/downloads/namespace.yaml | 7 - .../prowlarr/app/externalsecret.yaml | 19 -- .../downloads/prowlarr/app/helmrelease.yaml | 95 --------- .../downloads/prowlarr/app/kustomization.yaml | 8 - kubernetes/apps/downloads/prowlarr/ks.yaml | 30 --- .../qbittorrent/app/config/dnsdist.conf | 31 --- .../qbittorrent/app/externalsecret.yaml | 35 ---- .../qbittorrent/app/helmrelease.yaml | 188 ------------------ .../qbittorrent/app/kustomization.yaml | 19 -- .../qbittorrent/app/scripts/xseed.sh | 27 --- kubernetes/apps/downloads/qbittorrent/ks.yaml | 55 ----- .../qbittorrent/tools/helmrelease.yaml | 159 --------------- .../qbittorrent/tools/kustomization.yaml | 7 - .../qbittorrent/tools/secret.sops.yaml | 36 ---- .../downloads/radarr/app/externalsecret.yaml | 19 -- .../downloads/radarr/app/helmrelease.yaml | 108 ---------- .../downloads/radarr/app/kustomization.yaml | 8 - kubernetes/apps/downloads/radarr/ks.yaml | 28 --- .../recyclarr/app/config/recyclarr.yml | 63 ------ .../recyclarr/app/externalsecret.yaml | 23 --- .../downloads/recyclarr/app/helmrelease.yaml | 76 ------- .../recyclarr/app/kustomization.yaml | 16 -- kubernetes/apps/downloads/recyclarr/ks.yaml | 28 --- .../downloads/sabnzbd/app/externalsecret.yaml | 27 --- .../downloads/sabnzbd/app/helmrelease.yaml | 152 -------------- .../downloads/sabnzbd/app/kustomization.yaml | 16 -- .../downloads/sabnzbd/app/scripts/xseed.sh | 27 --- kubernetes/apps/downloads/sabnzbd/ks.yaml | 29 --- .../downloads/sonarr/app/externalsecret.yaml | 19 -- .../downloads/sonarr/app/helmrelease.yaml | 108 ---------- .../downloads/sonarr/app/kustomization.yaml | 8 - kubernetes/apps/downloads/sonarr/ks.yaml | 28 --- 45 files changed, 2037 deletions(-) delete mode 100644 kubernetes/apps/downloads/autobrr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/autobrr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/autobrr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/autobrr/ks.yaml delete mode 100644 kubernetes/apps/downloads/bazarr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/bazarr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/bazarr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/bazarr/ks.yaml delete mode 100644 kubernetes/apps/downloads/cross-seed/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/cross-seed/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/cross-seed/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/cross-seed/ks.yaml delete mode 100644 kubernetes/apps/downloads/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/namespace.yaml delete mode 100644 kubernetes/apps/downloads/prowlarr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/prowlarr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/prowlarr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/prowlarr/ks.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/app/config/dnsdist.conf delete mode 100644 kubernetes/apps/downloads/qbittorrent/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/app/scripts/xseed.sh delete mode 100644 kubernetes/apps/downloads/qbittorrent/ks.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/tools/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/tools/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/qbittorrent/tools/secret.sops.yaml delete mode 100644 kubernetes/apps/downloads/radarr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/radarr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/radarr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/radarr/ks.yaml delete mode 100644 kubernetes/apps/downloads/recyclarr/app/config/recyclarr.yml delete mode 100644 kubernetes/apps/downloads/recyclarr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/recyclarr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/recyclarr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/recyclarr/ks.yaml delete mode 100644 kubernetes/apps/downloads/sabnzbd/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/sabnzbd/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/sabnzbd/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/sabnzbd/app/scripts/xseed.sh delete mode 100644 kubernetes/apps/downloads/sabnzbd/ks.yaml delete mode 100644 kubernetes/apps/downloads/sonarr/app/externalsecret.yaml delete mode 100644 kubernetes/apps/downloads/sonarr/app/helmrelease.yaml delete mode 100644 kubernetes/apps/downloads/sonarr/app/kustomization.yaml delete mode 100644 kubernetes/apps/downloads/sonarr/ks.yaml diff --git a/kubernetes/apps/downloads/autobrr/app/externalsecret.yaml b/kubernetes/apps/downloads/autobrr/app/externalsecret.yaml deleted file mode 100644 index 8ad702e41..000000000 --- a/kubernetes/apps/downloads/autobrr/app/externalsecret.yaml +++ /dev/null @@ -1,44 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: autobrr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: autobrr-secret - creationPolicy: Owner - data: - - secretKey: AUTOBRR__SESSION_SECRET - remoteRef: - key: autobrr - property: session_secret ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: autobrr-db -spec: - refreshInterval: 1m - secretStoreRef: - name: crunchy-pgo-secrets - kind: ClusterSecretStore - target: - name: autobrr-db-secret - template: - type: Opaque - data: - AUTOBRR__DATABASE_TYPE: postgres - AUTOBRR__POSTGRES_HOST: '{{ index . "pgbouncer-host" }}' - AUTOBRR__POSTGRES_PORT: '{{ index . "pgbouncer-port" }}' - AUTOBRR__POSTGRES_DATABASE: '{{ index . "dbname" }}' - AUTOBRR__POSTGRES_USER: '{{ index . "user" }}' - AUTOBRR__POSTGRES_PASS: '{{ index . "password" }}' - dataFrom: - - extract: - key: postgres-pguser-autobrr diff --git a/kubernetes/apps/downloads/autobrr/app/helmrelease.yaml b/kubernetes/apps/downloads/autobrr/app/helmrelease.yaml deleted file mode 100644 index 1d361c32a..000000000 --- a/kubernetes/apps/downloads/autobrr/app/helmrelease.yaml +++ /dev/null @@ -1,91 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: autobrr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - values: - controllers: - autobrr: - annotations: - secret.reloader.stakater.com/reload: autobrr-secret,autobrr-db-secret - configmap.reloader.stakater.com/reload: autobrr-configmap - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - - containers: - app: - image: - repository: ghcr.io/autobrr/autobrr - tag: v1.47.0 - env: - AUTOBRR__CHECK_FOR_UPDATES: "false" - AUTOBRR__HOST: 0.0.0.0 - AUTOBRR__PORT: &port 7474 - AUTOBRR__LOG_LEVEL: DEBUG - envFrom: - - secretRef: - name: autobrr-secret - - secretRef: - name: autobrr-db-secret - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 10m - memory: 128Mi - limits: - memory: 256Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: autobrr - ports: - http: - port: *port - - ingress: - app: - className: internal-nginx - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: autobrr.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - tmp: - type: emptyDir diff --git a/kubernetes/apps/downloads/autobrr/app/kustomization.yaml b/kubernetes/apps/downloads/autobrr/app/kustomization.yaml deleted file mode 100644 index a530998cf..000000000 --- a/kubernetes/apps/downloads/autobrr/app/kustomization.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./helmrelease.yaml - - ./externalsecret.yaml diff --git a/kubernetes/apps/downloads/autobrr/ks.yaml b/kubernetes/apps/downloads/autobrr/ks.yaml deleted file mode 100644 index 0973b4fc9..000000000 --- a/kubernetes/apps/downloads/autobrr/ks.yaml +++ /dev/null @@ -1,26 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname autobrr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/autobrr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: external-secrets-stores - - name: rook-ceph-cluster - - name: crunchy-postgres-operator-cluster - - name: crunchy-postgres-operator-secretstore - - name: qbittorrent diff --git a/kubernetes/apps/downloads/bazarr/app/externalsecret.yaml b/kubernetes/apps/downloads/bazarr/app/externalsecret.yaml deleted file mode 100644 index 549b20f08..000000000 --- a/kubernetes/apps/downloads/bazarr/app/externalsecret.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: bazarr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: bazarr-secret - creationPolicy: Owner - data: - - secretKey: PLEX_TOKEN - remoteRef: - key: Plex - property: token diff --git a/kubernetes/apps/downloads/bazarr/app/helmrelease.yaml b/kubernetes/apps/downloads/bazarr/app/helmrelease.yaml deleted file mode 100644 index 7b2782208..000000000 --- a/kubernetes/apps/downloads/bazarr/app/helmrelease.yaml +++ /dev/null @@ -1,97 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: bazarr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - bazarr: - annotations: - reloader.stakater.com/auto: "true" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - supplementalGroups: - - 65542 # gladius:external-services - - containers: - app: - image: - repository: ghcr.io/onedr0p/bazarr - tag: 1.4.5@sha256:7292dc9854a4baf58278d51816a5cef69a455189ad12b827a05475c93cefc916 - envFrom: - - secretRef: - name: bazarr-secret - probes: - liveness: &probes - enabled: true - custom: true - spec: - httpGet: - path: /health - port: &port 6767 - initialDelaySeconds: 0 - periodSeconds: 10 - timeoutSeconds: 1 - failureThreshold: 3 - readiness: *probes - resources: - requests: - cpu: 15m - memory: 256Mi - limits: - memory: 512Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: bazarr - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: bazarr.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - existingClaim: bazarr-config - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - globalMounts: - - path: /data/nas-media diff --git a/kubernetes/apps/downloads/bazarr/app/kustomization.yaml b/kubernetes/apps/downloads/bazarr/app/kustomization.yaml deleted file mode 100644 index be13d2db0..000000000 --- a/kubernetes/apps/downloads/bazarr/app/kustomization.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync diff --git a/kubernetes/apps/downloads/bazarr/ks.yaml b/kubernetes/apps/downloads/bazarr/ks.yaml deleted file mode 100644 index 76d44fad4..000000000 --- a/kubernetes/apps/downloads/bazarr/ks.yaml +++ /dev/null @@ -1,28 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname bazarr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/bazarr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: bazarr-config diff --git a/kubernetes/apps/downloads/cross-seed/app/externalsecret.yaml b/kubernetes/apps/downloads/cross-seed/app/externalsecret.yaml deleted file mode 100644 index 0c4d21e6e..000000000 --- a/kubernetes/apps/downloads/cross-seed/app/externalsecret.yaml +++ /dev/null @@ -1,75 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: cross-seed -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: cross-seed-secret - creationPolicy: Owner - template: - engineVersion: v2 - data: - config.js: | - module.exports = { - apiKey: "{{ .cross_seed_api_key }}", - delay: 30, - qbittorrentUrl: "http://qbittorrent.downloads.svc.cluster.local:8080", - - radarr: [ - "http://radarr.downloads.svc.cluster.local:7878/?apikey={{ .radarr_api_key }}", - ], - sonarr: [ - "http://sonarr.downloads.svc.cluster.local:8989/?apikey={{ .sonarr_api_key }}", - ], - torznab: [ - 5, - 6, - 21, - 22, - ].map(i => `http://prowlarr.downloads.svc.cluster.local:9696/$${i}/api?apikey={{ .prowlarr_api_key }}`), - - action: "inject", - duplicateCategories: true, - flatLinking: false, - includeSingleEpisodes: true, - includeNonVideos: false, - matchMode: "safe", - - linkCategory: "cross-seed", - linkType: "hardlink", - linkDir: "/data/nas-media/Downloads/qbittorrent/complete/cross-seed", - - outputDir: "/qbittorrent/xseeds", - torrentDir: "/qbittorrent/qBittorrent/BT_backup", - } - dataFrom: - - extract: - key: prowlarr - rewrite: - - regexp: - source: "(.*)" - target: "prowlarr_$1" - - extract: - key: radarr - rewrite: - - regexp: - source: "(.*)" - target: "radarr_$1" - - extract: - key: sonarr - rewrite: - - regexp: - source: "(.*)" - target: "sonarr_$1" - - extract: - key: cross-seed - rewrite: - - regexp: - source: "(.*)" - target: "cross_seed_$1" diff --git a/kubernetes/apps/downloads/cross-seed/app/helmrelease.yaml b/kubernetes/apps/downloads/cross-seed/app/helmrelease.yaml deleted file mode 100644 index e0193d36f..000000000 --- a/kubernetes/apps/downloads/cross-seed/app/helmrelease.yaml +++ /dev/null @@ -1,96 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: cross-seed -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - dependsOn: - - name: qbittorrent - namespace: downloads - values: - controllers: - cross-seed: - annotations: - secret.reloader.stakater.com/reload: cross-seed-secret - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - supplementalGroups: - - 65542 # gladius:external-services - - containers: - app: - image: - repository: ghcr.io/cross-seed/cross-seed - tag: 6.0.0-39 - args: - - daemon - - -v - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 10m - memory: 128Mi - limits: - memory: 256Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: cross-seed - ports: - http: - port: 2468 - - persistence: - config: - type: emptyDir - config-file: - type: secret - name: cross-seed-secret - globalMounts: - - path: /config/config.js - subPath: config.js - readOnly: true - qbittorrent: - existingClaim: qbittorrent-config - globalMounts: - - path: /qbittorrent - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - advancedMounts: - cross-seed: - app: - - path: /data/nas-media diff --git a/kubernetes/apps/downloads/cross-seed/app/kustomization.yaml b/kubernetes/apps/downloads/cross-seed/app/kustomization.yaml deleted file mode 100644 index a530998cf..000000000 --- a/kubernetes/apps/downloads/cross-seed/app/kustomization.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./helmrelease.yaml - - ./externalsecret.yaml diff --git a/kubernetes/apps/downloads/cross-seed/ks.yaml b/kubernetes/apps/downloads/cross-seed/ks.yaml deleted file mode 100644 index f38826d71..000000000 --- a/kubernetes/apps/downloads/cross-seed/ks.yaml +++ /dev/null @@ -1,23 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname cross-seed - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/cross-seed/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: external-secrets-stores - - name: qbittorrent diff --git a/kubernetes/apps/downloads/kustomization.yaml b/kubernetes/apps/downloads/kustomization.yaml deleted file mode 100644 index 08c098822..000000000 --- a/kubernetes/apps/downloads/kustomization.yaml +++ /dev/null @@ -1,17 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - # Pre Flux-Kustomizations - - ./namespace.yaml - # Flux-Kustomizations - - ./autobrr/ks.yaml - - ./bazarr/ks.yaml - - ./cross-seed/ks.yaml - - ./prowlarr/ks.yaml - - ./qbittorrent/ks.yaml - - ./radarr/ks.yaml - - ./recyclarr/ks.yaml - - ./sabnzbd/ks.yaml - - ./sonarr/ks.yaml diff --git a/kubernetes/apps/downloads/namespace.yaml b/kubernetes/apps/downloads/namespace.yaml deleted file mode 100644 index bbf544dc6..000000000 --- a/kubernetes/apps/downloads/namespace.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -apiVersion: v1 -kind: Namespace -metadata: - name: downloads - labels: - kustomize.toolkit.fluxcd.io/prune: disabled diff --git a/kubernetes/apps/downloads/prowlarr/app/externalsecret.yaml b/kubernetes/apps/downloads/prowlarr/app/externalsecret.yaml deleted file mode 100644 index dd1f64741..000000000 --- a/kubernetes/apps/downloads/prowlarr/app/externalsecret.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: prowlarr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: prowlarr-secret - creationPolicy: Owner - data: - - secretKey: api_key - remoteRef: - key: prowlarr - property: api_key diff --git a/kubernetes/apps/downloads/prowlarr/app/helmrelease.yaml b/kubernetes/apps/downloads/prowlarr/app/helmrelease.yaml deleted file mode 100644 index 956a76d36..000000000 --- a/kubernetes/apps/downloads/prowlarr/app/helmrelease.yaml +++ /dev/null @@ -1,95 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: prowlarr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - prowlarr: - annotations: - reloader.stakater.com/auto: "true" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: OnRootMismatch - - containers: - app: - image: - repository: ghcr.io/onedr0p/prowlarr-nightly - tag: 1.25.2.4776@sha256:dec6e87987c31dda9b7b00663acf8c3d618f8fdd9cb9ed19b21f4f910a9e88a5 - env: - COMPlus_EnableDiagnostics: "0" - PROWLARR__INSTANCE_NAME: Prowlarr - PROWLARR__PORT: &port 9696 - PROWLARR__LOG_LEVEL: info - PROWLARR__ANALYTICS_ENABLED: "False" - PROWLARR__AUTHENTICATION_METHOD: External - PROWLARR__API_KEY: - valueFrom: - secretKeyRef: - name: prowlarr-secret - key: api_key - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 18m - memory: 128Mi - limits: - memory: 512Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: prowlarr - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: prowlarr.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - existingClaim: prowlarr-config diff --git a/kubernetes/apps/downloads/prowlarr/app/kustomization.yaml b/kubernetes/apps/downloads/prowlarr/app/kustomization.yaml deleted file mode 100644 index be13d2db0..000000000 --- a/kubernetes/apps/downloads/prowlarr/app/kustomization.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync diff --git a/kubernetes/apps/downloads/prowlarr/ks.yaml b/kubernetes/apps/downloads/prowlarr/ks.yaml deleted file mode 100644 index 743758046..000000000 --- a/kubernetes/apps/downloads/prowlarr/ks.yaml +++ /dev/null @@ -1,30 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname prowlarr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/prowlarr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - APP_UID: "2000" - APP_GID: "2000" - VOLSYNC_CLAIM: prowlarr-config diff --git a/kubernetes/apps/downloads/qbittorrent/app/config/dnsdist.conf b/kubernetes/apps/downloads/qbittorrent/app/config/dnsdist.conf deleted file mode 100644 index af757548c..000000000 --- a/kubernetes/apps/downloads/qbittorrent/app/config/dnsdist.conf +++ /dev/null @@ -1,31 +0,0 @@ --- udp/tcp dns listening - setLocal("127.0.0.2:53", {}) - - -- K8S DNS - newServer({ - address = "10.96.0.10", - pool = "k8s", - healthCheckMode = "lazy", - lazyHealthCheckMode = 'TimeoutOnly', - }) - - -- CloudFlare DNS over TLS - newServer({ - address = "1.1.1.1:853", - tls = "openssl", - subjectName = "cloudflare-dns.com", - validateCertificates = true, - healthCheckMode = "lazy", - lazyHealthCheckMode = 'TimeoutOnly', - }) - newServer({ - address = "1.0.0.1:853", - tls = "openssl", - subjectName = "cloudflare-dns.com", - validateCertificates = true, - healthCheckMode = "lazy", - lazyHealthCheckMode = 'TimeoutOnly', - }) - - -- Routing rules - addAction('cluster.local', PoolAction('k8s')) diff --git a/kubernetes/apps/downloads/qbittorrent/app/externalsecret.yaml b/kubernetes/apps/downloads/qbittorrent/app/externalsecret.yaml deleted file mode 100644 index bcbabfa36..000000000 --- a/kubernetes/apps/downloads/qbittorrent/app/externalsecret.yaml +++ /dev/null @@ -1,35 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: qbittorrent -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: qbittorrent-secret - creationPolicy: Owner - data: - - secretKey: WIREGUARD_ENDPOINT_IP - remoteRef: - key: Proton VPN - property: qbittorrent_vpn_endpoint_ip - - secretKey: WIREGUARD_PUBLIC_KEY - remoteRef: - key: Proton VPN - property: qbittorrent_wireguard_public_key - - secretKey: WIREGUARD_PRIVATE_KEY - remoteRef: - key: Proton VPN - property: qbittorrent_wireguard_private_key - - secretKey: WIREGUARD_ADDRESSES - remoteRef: - key: Proton VPN - property: qbittorrent_wireguard_addresses - - secretKey: xseed_api_key - remoteRef: - key: cross-seed - property: api_key diff --git a/kubernetes/apps/downloads/qbittorrent/app/helmrelease.yaml b/kubernetes/apps/downloads/qbittorrent/app/helmrelease.yaml deleted file mode 100644 index 7a86f2363..000000000 --- a/kubernetes/apps/downloads/qbittorrent/app/helmrelease.yaml +++ /dev/null @@ -1,188 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: qbittorrent -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - qbittorrent: - annotations: - configmap.reloader.stakater.com/reload: qbittorrent-scripts,qbittorrent-dnsdist - secret.reloader.stakater.com/reload: qbittorrent-secret - - pod: - securityContext: - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - supplementalGroups: - - 65542 # gladius:external-services - terminationGracePeriodSeconds: 120 - - containers: - app: - nameOverride: qbittorrent - image: - repository: ghcr.io/onedr0p/qbittorrent - tag: 4.6.7@sha256:5391f94b321d563c3b44136a5e799b7e4e4888926c1c31d3081a1cf3e74a9aec - env: - UMASK: "022" - QBT_WEBUI_PORT: &port 8080 - XSEED_HOST: cross-seed.downloads.svc.cluster.local - XSEED_PORT: 2468 - XSEED_APIKEY: - valueFrom: - secretKeyRef: - name: sabnzbd-secret - key: xseed_api_key - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 49m - memory: 1024Mi - limits: - memory: 8192Mi - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - dnsdist: - image: - repository: docker.io/powerdns/dnsdist-19 - tag: 1.9.7 - - gluetun: - image: - repository: ghcr.io/qdm12/gluetun - tag: v3.39.1 - env: - DOT: "off" - DNS_ADDRESS: "127.0.0.2" - VPN_SERVICE_PROVIDER: custom - VPN_TYPE: wireguard - VPN_INTERFACE: wg0 - WIREGUARD_ENDPOINT_PORT: 51820 - VPN_PORT_FORWARDING: on - VPN_PORT_FORWARDING_PROVIDER: protonvpn - FIREWALL_INPUT_PORTS: 8080 - FIREWALL_OUTBOUND_SUBNETS: 10.96.0.0/12,10.244.0.0/16 # Allow access to k8s subnets - envFrom: - - secretRef: - name: qbittorrent-secret - resources: - limits: - squat.ai/tun: "1" - securityContext: - capabilities: - add: - - NET_ADMIN - allowPrivilegeEscalation: false - - port-forward: - image: - repository: ghcr.io/bjw-s-labs/gluetun-qb-port-sync - tag: 0.0.2@sha256:ac6c0061fd61b85a588cfdd7742b2a757f9c2f3663ed354a4581f3e668b0ed81 - env: - GLUETUN_CONTROL_SERVER_HOST: localhost - GLUETUN_CONTROL_SERVER_PORT: 8000 - QBITTORRENT_HOST: localhost - QBITTORRENT_WEBUI_PORT: *port - CRON_ENABLED: true - CRON_SCHEDULE: "*/5 * * * *" - LOG_TIMESTAMP: false - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: qbittorrent - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: qbittorrent.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - enabled: true - existingClaim: qbittorrent-config - advancedMounts: - qbittorrent: - app: - - path: /config - empty-config: - type: emptyDir - advancedMounts: - qbittorrent: - port-forward: - - path: /config - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - advancedMounts: - qbittorrent: - app: - - path: /data/nas-media - dnsdist: - type: configMap - name: qbittorrent-dnsdist - advancedMounts: - qbittorrent: - dnsdist: - - path: /etc/dnsdist/dnsdist.conf - subPath: dnsdist.conf - readOnly: true - scripts: - type: configMap - name: qbittorrent-scripts - defaultMode: 0775 - advancedMounts: - qbittorrent: - app: - - path: /config/scripts diff --git a/kubernetes/apps/downloads/qbittorrent/app/kustomization.yaml b/kubernetes/apps/downloads/qbittorrent/app/kustomization.yaml deleted file mode 100644 index 2dfe8c7f9..000000000 --- a/kubernetes/apps/downloads/qbittorrent/app/kustomization.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync -configMapGenerator: - - name: qbittorrent-scripts - files: - - scripts/xseed.sh - - name: qbittorrent-dnsdist - files: - - ./config/dnsdist.conf -generatorOptions: - disableNameSuffixHash: true - annotations: - kustomize.toolkit.fluxcd.io/substitute: disabled diff --git a/kubernetes/apps/downloads/qbittorrent/app/scripts/xseed.sh b/kubernetes/apps/downloads/qbittorrent/app/scripts/xseed.sh deleted file mode 100644 index d88726722..000000000 --- a/kubernetes/apps/downloads/qbittorrent/app/scripts/xseed.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env bash - -XSEED_HOST=${XSEED_HOST:-crossseed} -XSEED_PORT=${XSEED_PORT:-8080} -XSEED_APIKEY=${XSEED_APIKEY:-unset} -XSEED_SLEEP_INTERVAL=${CROSS_SEED_SLEEP_INTERVAL:-30} - -SEARCH_PATH=$1 - -response=$(curl \ - --silent \ - --output /dev/null \ - --write-out "%{http_code}" \ - --request POST \ - --data-urlencode "path=${SEARCH_PATH}" \ - --header "X-Api-Key: ${XSEED_APIKEY}" \ - "http://${XSEED_HOST}:${XSEED_PORT}/api/webhook" -) - -if [[ "${response}" != "204" ]]; then - printf "Failed to search cross-seed for '%s'\n" "${SEARCH_PATH}" - exit 1 -fi - -printf "Successfully searched cross-seed for '%s'\n" "${SEARCH_PATH}" - -sleep "${XSEED_SLEEP_INTERVAL}" diff --git a/kubernetes/apps/downloads/qbittorrent/ks.yaml b/kubernetes/apps/downloads/qbittorrent/ks.yaml deleted file mode 100644 index 51c2db217..000000000 --- a/kubernetes/apps/downloads/qbittorrent/ks.yaml +++ /dev/null @@ -1,55 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname qbittorrent - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/qbittorrent/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: true - dependsOn: - - name: rook-ceph-cluster - - name: generic-device-plugin - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: qbittorrent-config - VOLSYNC_CAPACITY: 2Gi - VOLSYNC_ACCESSMODES: ReadWriteMany - VOLSYNC_STORAGECLASS: ceph-filesystem - VOLSYNC_SNAPSHOTCLASS: csi-ceph-filesystem ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname qbtools - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/qbittorrent/tools" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: qbittorrent diff --git a/kubernetes/apps/downloads/qbittorrent/tools/helmrelease.yaml b/kubernetes/apps/downloads/qbittorrent/tools/helmrelease.yaml deleted file mode 100644 index 737b2442d..000000000 --- a/kubernetes/apps/downloads/qbittorrent/tools/helmrelease.yaml +++ /dev/null @@ -1,159 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: qbtools -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - defaultPodOptions: - securityContext: - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - seccompProfile: - type: RuntimeDefault - supplementalGroups: - - 65542 # gladius:external-services - - controllers: - prune: - type: cronjob - - cronjob: &cronJobSpec - schedule: "@hourly" - concurrencyPolicy: Forbid - successfulJobsHistory: 0 - failedJobsHistory: 1 - - pod: - restartPolicy: OnFailure - - initContainers: - tagging: &container - image: - repository: ghcr.io/buroa/qbtools - tag: v0.17.6 - args: - - tagging - - --added-on - - --expired - - --last-activity - - --sites - - --unregistered - - --server - - &qbittorrent_host qbittorrent.downloads.svc.cluster.local - - --port - - &qbittorrent_port "8080" - - --config - - /config/config.yaml - resources: - requests: - memory: 128Mi - cpu: 25m - limits: - memory: 256Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - containers: - expired: - <<: *container - args: - - prune - - --exclude-category - - manual - - --exclude-category - - cross-seed - - --exclude-tag - - added:24h - - --include-tag - - expired - - --server - - *qbittorrent_host - - --port - - *qbittorrent_port - - unregistered: - <<: *container - args: - - prune - - --exclude-category - - manual - - --exclude-category - - cross-seed - - --exclude-tag - - added:24h - - --include-tag - - unregistered - - --server - - *qbittorrent_host - - --port - - *qbittorrent_port - - orphaned: - type: cronjob - cronjob: - <<: *cronJobSpec - schedule: "@daily" - pod: - restartPolicy: OnFailure - containers: - app: - <<: *container - args: - - orphaned - - --exclude-pattern - - "*/manual/*" - - --exclude-pattern - - "*/cross-seed/*" - - --server - - *qbittorrent_host - - --port - - *qbittorrent_port - - reannounce: - containers: - app: - <<: *container - args: - - reannounce - - --process-seeding - - --server - - *qbittorrent_host - - --port - - *qbittorrent_port - - persistence: - config-file: - type: secret - name: qbtools-secret - globalMounts: - - path: /config/config.yaml - subPath: config.yaml - readOnly: true - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - advancedMounts: - orphaned: - app: - - path: /data/nas-media diff --git a/kubernetes/apps/downloads/qbittorrent/tools/kustomization.yaml b/kubernetes/apps/downloads/qbittorrent/tools/kustomization.yaml deleted file mode 100644 index 8b3cc1a14..000000000 --- a/kubernetes/apps/downloads/qbittorrent/tools/kustomization.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./helmrelease.yaml - - ./secret.sops.yaml diff --git a/kubernetes/apps/downloads/qbittorrent/tools/secret.sops.yaml b/kubernetes/apps/downloads/qbittorrent/tools/secret.sops.yaml deleted file mode 100644 index 88b3698e9..000000000 --- a/kubernetes/apps/downloads/qbittorrent/tools/secret.sops.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# yamllint disable -apiVersion: v1 -kind: Secret -metadata: - name: qbtools-secret -stringData: - config.yaml: ENC[AES256_GCM,data:TUgd3b3TonwmCktHpYxLouENq1XIvRNB4XDTbd4ZCNSe1Mx+DE8IJGj4hox7rhmYQsipwwUBoDVh5ZATMlBep33phowLLbJ3359jI+pYvWJ86fs8u9Bcw3biEzuMXekNPYrYZv0MWtNG5YCEjXMITimQBvqEij/pO9JOyKBsTacwozzQ/QuYIl1hKAMtlIfVU0RvC8mxUnCK4OWW4639LEVXCTXsoZStl9UpTPNWfdE6RUIPwAQnh+cg2Am06jUHl/+pTIPSCrMFHYXWYwy98BV8UD5QZ6Z++soOy4EVSiREEe8vyyAYMdOfyeQbmbrO8NRGchwQTyIPk9TtZFaJqUL7llALJD+Oknpt3PCDuXlKmNnNH2r907XHyFk3y2zdX7eaN6cT0hQhyiJHl3zdl2XJ+LWWIRM712nFVOCnklPY+8Ac7XFcYFJ6nL8D8qaw0qA85WPosh3MIE67jd5t6ec96A2l7/NF5NMw1Uyt26JlYGf73agHb2IujvAVnWGCflY4wZl438anYQ8R+5hmqmXx78TcX62dXwLTA+ur82ropa2+M0CGDh6Q+EnoC0fdvn/azuShYe6VW2l5H8b8l2e57L7aCR6V4/++JSmJpsBh2pKgubBaylg2nD16z8nhxixJ5HotaLrFIHAiCAMTa+0gcPDTH8dK1BFg8e4UFl/qIeVaqO9cAqxYe3PfFJyFAroj+papTEacSkS8wGLx5RN/79skJqrEJ213pwRLlhUh43u2i1E5CAFQEyc5PpjmZ7sRDErEoyhKLECLzABX/2bMMfDff6EyDHJqRNHOSXGc65VKV62z4D64unDeUoZaDiAPyz7cLUb3+QpgLDTEd03nfrnS1VTp8vI/a492WMc6xNFUFq3JE4Gkmp2KEtDo0H9f3DDD4UV7S1U8HoUNeGGYO+3D+7JtUPD8z4EFZWt2St0b1xLKCCEwdHkFZh2BmiYYX0Uzgs6oPBtAlxQ7dlKFgPD9/LOeCzy+bCRWPFDqwAFuAcoO2swvKqEiJfQj8K8OtAEm3j/qwTOr4UkTk6AI2t0vc5DSASMN1L9KZAXxBEKpCZEZNkesTQlC0qMLs64rJZVEBJj2t1VoByWMem3uTjBdumUz+ETwM5tqMItDkPF9+8b34KY10iznZySc0XE2M899HLu2WptfbneOCAVhIf5x1aRDHoCoHZWoh4bq8uKDJ/IbO2OcQOGbT7Rxkwus26G0lXJC5YrXYb37H6nhB+7j/kCgLjlcDPOQXSTP9rrh2wiGuIsB5NCrKb0WDq1NmHnS/0lEe4/Fe+BgsCDLRPOqzu2bh7dcAj3icTM7iuOqt9pPXSUYBip9qLsF6/x2ADtl2BiakvKHPjiXl2t8S4Ydvw/yzGZvEO5tcIlXHOZMCYt9w0zXaBraH0Gx1TgSH+nS0Zuajghea/zZm506+mlI2eHngytmnE9+Jof3JC+zRyqiwWr1YXtbpo6o7x9xmh3hHmYwu2ZKou9SlsP39xtI+sAl5/22Bm+E7zpeqXHd2DZ1jUEdwivFOwdtEeQzLFlB4ZJ28TbIonxRNffARcETl0QcN1/WGTFFOCYp6PaZpWFrEm54yDQfb/yy6aXlgoBTCnNnsM1QAeKLq8UTDIJg+JI4IkeE7Cfx7lZSiKFlaSpI5FUsP7wqs14yzLiHF04wtNIKxeuM180qhl3J4uzGWIULTAY1pu51l/Zp9Fw24B9+HqrGwWDwMlbsn/NYO5V1PPLolxzWREQCjjp/GLiqQzPxwMgyG+kqZKmFfmpUmKAeD2qKNf88EKbqiMs/lCY7R4bkZ3ohBQGiUKJG0lQghaDUbUQaAAG3gCakwhJ6o3fzpQ5hCp9aGEl2tfIchPbwVhNQ2PpZYd/0M8FCJSTJkKd/jt8nepguhl9oAeNetIWgIciwrNNd9SAA1Bj8gFyTio2zrK7EkotuGZkYkDCjE+dj1EK8Q1Dfg6PvxA6SAT3swyq5JokLM5nN0YASmQHZOglBquIxrDxNoUTcQkTqw+VCp7qBRR9D9at6c2wdQc3LUmSDiVyy7gEMiI58DIr4ukI0iP+RldICYyWAY7r/1At2TqN9YgFL,iv:5doDbg7SffxoSgp16IFvnh5SED++cZsmDO2ep9kz7LI=,tag:IkVN6uK0VmPmEWBYwjGMDw==,type:str] -sops: - kms: [] - gcp_kms: [] - azure_kv: [] - hc_vault: [] - age: - - recipient: age1uk0y2ahfavgsgqvrtg5a22w5gytpdmjuatxtcw6kntmxhlcgreesuwzw5s - enc: | - -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPNXNzQnlPS2RrNHIvVGZq - S0N4bXVsRWhuYnF4bENLZ2dTMGNKbTJZT3pnCkVIR3JBSkZ1MFBoaFI1S1dCbVFW - SVJxOGZYWDdoYjd5NldCa0EvZWxTUFEKLS0tIEFWa3BScWtsckUxRk1zQVlUc3Ny - ZTRTY1JqZWU2a0hMYlJSS1cyVFZybmMKOcjeeKtslgAMj7AXs7MoLoJGzRPdwy8q - JT+ugWz6DB+qkIMvOgllBy+Ik0lnSxeowQEKi8OsWxK/H5m3/RWeWw== - -----END AGE ENCRYPTED FILE----- - - recipient: age1hawjtl6fm5czl8cun0ve7jvsmpqpn3qlxl2lnx7ndt7682tmva2qz3drfe - enc: | - -----BEGIN AGE ENCRYPTED FILE----- - YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBueTB4eVBBMmxHaW5vY2tH - cVJwdU9IWWxLcm1scWFzVVNZTjlCbjMzMkFJCkMzOXdUaWo4ZXJ6bkFiT0VmVDUw - Uzd3YU1ZSzdoL0RSSTZTaU9EVEJLSFkKLS0tIEh2MmRHcEJPeTg3RWtLZmM2eTdp - SkVkSGVQQndRNkI3bWt1MmhyRmQwR00Kws0zmOF5D4ap0RivrBWZQ4i/C1LjtIWR - MrdHYOFIa2SN18scnwKjhQlX91Pr6HJ+yUcyiz5kpiNSNgYpFOqbXg== - -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-10-02T08:16:59Z" - mac: ENC[AES256_GCM,data:meHlQHtsqC1ebhHEjU5AEukkf7TAHNLP36JbvzqGGvdHzt4c3CUDd4tAMyw7a7hTFuCK/MOfXsBLk8J/FZXgsyuBntCkQlfnJAVefJu/qtwD+/eU5yUs/Z6PYKIu2+NSkor+x403l4Qb/UasSIev8TRicXfMza0qLd5s+3c/pSM=,iv:fD5z1z/E0K4smRMCFnTX/9TR97BGhwipIVzU5UAZxcA=,tag:rRgcGlKZTudJ+0jcnP7jew==,type:str] - pgp: [] - encrypted_regex: ^(data|stringData)$ - version: 3.8.1 diff --git a/kubernetes/apps/downloads/radarr/app/externalsecret.yaml b/kubernetes/apps/downloads/radarr/app/externalsecret.yaml deleted file mode 100644 index 8b31245e5..000000000 --- a/kubernetes/apps/downloads/radarr/app/externalsecret.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: radarr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: radarr-secret - creationPolicy: Owner - data: - - secretKey: api_key - remoteRef: - key: radarr - property: api_key diff --git a/kubernetes/apps/downloads/radarr/app/helmrelease.yaml b/kubernetes/apps/downloads/radarr/app/helmrelease.yaml deleted file mode 100644 index d2acf4c2d..000000000 --- a/kubernetes/apps/downloads/radarr/app/helmrelease.yaml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: radarr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - radarr: - annotations: - reloader.stakater.com/auto: "true" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - supplementalGroups: - - 65542 # gladius:external-services - - containers: - app: - image: - repository: ghcr.io/onedr0p/radarr-develop - tag: 5.12.0.9255@sha256:87c788eb150218172c951e8f37ec60dbc5a3033c909f1467c3bbee88e5a51f3b - env: - COMPlus_EnableDiagnostics: "0" - RADARR__INSTANCE_NAME: Radarr - RADARR__PORT: &port 7878 - RADARR__AUTHENTICATION_METHOD: External - RADARR__AUTHENTICATION_REQUIRED: DisabledForLocalAddresses - RADARR__APPLICATION_URL: "https://radarr.bjw-s.dev" - RADARR__LOG_LEVEL: info - RADARR__API_KEY: - valueFrom: - secretKeyRef: - name: radarr-secret - key: api_key - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 20m - memory: 384Mi - limits: - memory: 2Gi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: radarr - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: radarr.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - existingClaim: radarr-config - add-ons: - type: emptyDir - tmp: - type: emptyDir - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - globalMounts: - - path: /data/nas-media diff --git a/kubernetes/apps/downloads/radarr/app/kustomization.yaml b/kubernetes/apps/downloads/radarr/app/kustomization.yaml deleted file mode 100644 index be13d2db0..000000000 --- a/kubernetes/apps/downloads/radarr/app/kustomization.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync diff --git a/kubernetes/apps/downloads/radarr/ks.yaml b/kubernetes/apps/downloads/radarr/ks.yaml deleted file mode 100644 index 4bbd90a98..000000000 --- a/kubernetes/apps/downloads/radarr/ks.yaml +++ /dev/null @@ -1,28 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname radarr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/radarr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: radarr-config diff --git a/kubernetes/apps/downloads/recyclarr/app/config/recyclarr.yml b/kubernetes/apps/downloads/recyclarr/app/config/recyclarr.yml deleted file mode 100644 index cd9e049fc..000000000 --- a/kubernetes/apps/downloads/recyclarr/app/config/recyclarr.yml +++ /dev/null @@ -1,63 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/recyclarr/recyclarr/master/schemas/config-schema.json -sonarr: - sonarr_main: - base_url: http://sonarr.downloads.svc.cluster.local:8989 - api_key: !env_var SONARR_API_KEY - - delete_old_custom_formats: true - replace_existing_custom_formats: true - - include: - - template: sonarr-quality-definition-series - # 1080p - - template: sonarr-v4-quality-profile-web-1080p - - template: sonarr-v4-custom-formats-web-1080p - # 2160p - - template: sonarr-v4-quality-profile-web-2160p - - template: sonarr-v4-custom-formats-web-2160p - - quality_profiles: - - name: WEB-1080p - - name: WEB-2160p - - custom_formats: - - trash_ids: - - 32b367365729d530ca1c124a0b180c64 # Bad Dual Groups - - 82d40da2bc6923f41e14394075dd4b03 # No-RlsGroup - - e1a997ddb54e3ecbfe06341ad323c458 # Obfuscated - - 06d66ab109d4d2eddb2794d21526d140 # Retags - - 1b3994c551cbb92a2c781af061f4ab44 # Scene - assign_scores_to: - - name: WEB-1080p - - name: WEB-2160p - -radarr: - radarr_main: - base_url: http://radarr.downloads.svc.cluster.local:7878 - api_key: !env_var RADARR_API_KEY - - delete_old_custom_formats: true - replace_existing_custom_formats: true - - include: - - template: radarr-quality-definition-sqp-streaming - # 2160p - - template: radarr-custom-formats-sqp-1-2160p - - template: radarr-quality-profile-sqp-1-2160p-4k-only-imax-e - - quality_profiles: - - name: SQP-1 (2160p) - min_format_score: 2000 - - custom_formats: - - trash_ids: - - 7a0d1ad358fee9f5b074af3ef3f9d9ef # hallowed - - b6832f586342ef70d9c128d40c07b872 # Bad Dual Groups - - 90cedc1fea7ea5d11298bebd3d1d3223 # EVO (no WEBDL) - - ae9b7c9ebde1f3bd336a8cbd1ec4c5e5 # No-RlsGroup - - 7357cf5161efbf8c4d5d0c30b4815ee2 # Obfuscated - - 5c44f52a8714fdd79bb4d98e2673be1f # Retags - - f537cf427b64c38c8e36298f657e4828 # Scene - assign_scores_to: - - name: SQP-1 (2160p) diff --git a/kubernetes/apps/downloads/recyclarr/app/externalsecret.yaml b/kubernetes/apps/downloads/recyclarr/app/externalsecret.yaml deleted file mode 100644 index 017abf772..000000000 --- a/kubernetes/apps/downloads/recyclarr/app/externalsecret.yaml +++ /dev/null @@ -1,23 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: recyclarr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: recyclarr-secret - creationPolicy: Owner - data: - - secretKey: RADARR_API_KEY - remoteRef: - key: radarr - property: api_key - - secretKey: SONARR_API_KEY - remoteRef: - key: sonarr - property: api_key diff --git a/kubernetes/apps/downloads/recyclarr/app/helmrelease.yaml b/kubernetes/apps/downloads/recyclarr/app/helmrelease.yaml deleted file mode 100644 index aa86689b6..000000000 --- a/kubernetes/apps/downloads/recyclarr/app/helmrelease.yaml +++ /dev/null @@ -1,76 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: recyclarr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - recyclarr: - type: cronjob - - annotations: - reloader.stakater.com/auto: "true" - - cronjob: - schedule: "@daily" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: OnRootMismatch - - containers: - app: - image: - repository: ghcr.io/recyclarr/recyclarr - tag: 7.2.4 - args: - - sync - env: - COMPlus_EnableDiagnostics: "0" - envFrom: - - secretRef: - name: recyclarr-secret - resources: - requests: - cpu: 5m - memory: 36M - limits: - memory: 128M - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - persistence: - config: - existingClaim: recyclarr-config - advancedMounts: - recyclarr: - app: - - path: /config - config-file: - type: configMap - name: recyclarr-configmap - globalMounts: - - path: /config/recyclarr.yml - subPath: recyclarr.yml - readOnly: true diff --git a/kubernetes/apps/downloads/recyclarr/app/kustomization.yaml b/kubernetes/apps/downloads/recyclarr/app/kustomization.yaml deleted file mode 100644 index f0110c16e..000000000 --- a/kubernetes/apps/downloads/recyclarr/app/kustomization.yaml +++ /dev/null @@ -1,16 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync -configMapGenerator: - - name: recyclarr-configmap - files: - - config/recyclarr.yml -generatorOptions: - disableNameSuffixHash: true - annotations: - kustomize.toolkit.fluxcd.io/substitute: disabled diff --git a/kubernetes/apps/downloads/recyclarr/ks.yaml b/kubernetes/apps/downloads/recyclarr/ks.yaml deleted file mode 100644 index 05829d104..000000000 --- a/kubernetes/apps/downloads/recyclarr/ks.yaml +++ /dev/null @@ -1,28 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname recyclarr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/recyclarr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: recyclarr-config diff --git a/kubernetes/apps/downloads/sabnzbd/app/externalsecret.yaml b/kubernetes/apps/downloads/sabnzbd/app/externalsecret.yaml deleted file mode 100644 index 47c5fe44b..000000000 --- a/kubernetes/apps/downloads/sabnzbd/app/externalsecret.yaml +++ /dev/null @@ -1,27 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: sabnzbd -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: sabnzbd-secret - creationPolicy: Owner - data: - - secretKey: api_key - remoteRef: - key: sabnzbd - property: api_key - - secretKey: nzb_key - remoteRef: - key: sabnzbd - property: nzb_key - - secretKey: xseed_api_key - remoteRef: - key: cross-seed - property: api_key diff --git a/kubernetes/apps/downloads/sabnzbd/app/helmrelease.yaml b/kubernetes/apps/downloads/sabnzbd/app/helmrelease.yaml deleted file mode 100644 index 6102b513a..000000000 --- a/kubernetes/apps/downloads/sabnzbd/app/helmrelease.yaml +++ /dev/null @@ -1,152 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: sabnzbd -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - sabnzbd: - annotations: - reloader.stakater.com/auto: "true" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: OnRootMismatch - supplementalGroups: - - 65542 # gladius:external-services - - containers: - app: - image: - repository: ghcr.io/onedr0p/sabnzbd - tag: 4.3.3@sha256:4ad73733ae11eb03852ba99d6e49bff93f8087f9f77b9b193a1063c3f6f31482 - env: - SABNZBD__PORT: &port 8080 - SABNZBD__HOST_WHITELIST_ENTRIES: >- - sabnzbd, - sabnzbd.downloads, - sabnzbd.downloads.svc, - sabnzbd.downloads.svc.cluster, - sabnzbd.downloads.svc.cluster.local, - sabnzbd.bjw-s.dev - SABNZBD__API_KEY: - valueFrom: - secretKeyRef: - name: sabnzbd-secret - key: api_key - SABNZBD__NZB_KEY: - valueFrom: - secretKeyRef: - name: sabnzbd-secret - key: nzb_key - XSEED_HOST: cross-seed.downloads.svc.cluster.local - XSEED_PORT: 2468 - XSEED_APIKEY: - valueFrom: - secretKeyRef: - name: sabnzbd-secret - key: xseed_api_key - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 5m - memory: 1024Mi - limits: - memory: 6144Mi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: sabnzbd - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: sabnzbd.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - existingClaim: sabnzbd-config - advancedMounts: - sabnzbd: - app: - - path: /config - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - globalMounts: - - path: /data/nas-media - temp: - type: emptyDir - advancedMounts: - sabnzbd: - app: - - path: /tmp - ephemeral: - type: custom - volumeSpec: - ephemeral: - volumeClaimTemplate: - spec: - accessModes: - - ReadWriteOnce - storageClassName: "openebs-hostpath" - resources: - requests: - storage: 100Gi - advancedMounts: - sabnzbd: - app: - - path: /incomplete - subPath: incomplete - scripts: - type: configMap - name: sabnzbd-scripts - defaultMode: 0775 - advancedMounts: - sabnzbd: - app: - - path: /config/scripts diff --git a/kubernetes/apps/downloads/sabnzbd/app/kustomization.yaml b/kubernetes/apps/downloads/sabnzbd/app/kustomization.yaml deleted file mode 100644 index 6b5365d48..000000000 --- a/kubernetes/apps/downloads/sabnzbd/app/kustomization.yaml +++ /dev/null @@ -1,16 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./helmrelease.yaml - - ./externalsecret.yaml - - ../../../../templates/volsync -configMapGenerator: - - name: sabnzbd-scripts - files: - - scripts/xseed.sh -generatorOptions: - disableNameSuffixHash: true - annotations: - kustomize.toolkit.fluxcd.io/substitute: disabled diff --git a/kubernetes/apps/downloads/sabnzbd/app/scripts/xseed.sh b/kubernetes/apps/downloads/sabnzbd/app/scripts/xseed.sh deleted file mode 100644 index d88726722..000000000 --- a/kubernetes/apps/downloads/sabnzbd/app/scripts/xseed.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env bash - -XSEED_HOST=${XSEED_HOST:-crossseed} -XSEED_PORT=${XSEED_PORT:-8080} -XSEED_APIKEY=${XSEED_APIKEY:-unset} -XSEED_SLEEP_INTERVAL=${CROSS_SEED_SLEEP_INTERVAL:-30} - -SEARCH_PATH=$1 - -response=$(curl \ - --silent \ - --output /dev/null \ - --write-out "%{http_code}" \ - --request POST \ - --data-urlencode "path=${SEARCH_PATH}" \ - --header "X-Api-Key: ${XSEED_APIKEY}" \ - "http://${XSEED_HOST}:${XSEED_PORT}/api/webhook" -) - -if [[ "${response}" != "204" ]]; then - printf "Failed to search cross-seed for '%s'\n" "${SEARCH_PATH}" - exit 1 -fi - -printf "Successfully searched cross-seed for '%s'\n" "${SEARCH_PATH}" - -sleep "${XSEED_SLEEP_INTERVAL}" diff --git a/kubernetes/apps/downloads/sabnzbd/ks.yaml b/kubernetes/apps/downloads/sabnzbd/ks.yaml deleted file mode 100644 index 27a2e2ffc..000000000 --- a/kubernetes/apps/downloads/sabnzbd/ks.yaml +++ /dev/null @@ -1,29 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname sabnzbd - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/sabnzbd/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: openebs - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: sabnzbd-config diff --git a/kubernetes/apps/downloads/sonarr/app/externalsecret.yaml b/kubernetes/apps/downloads/sonarr/app/externalsecret.yaml deleted file mode 100644 index 93f0b9e50..000000000 --- a/kubernetes/apps/downloads/sonarr/app/externalsecret.yaml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/datreeio/CRDs-catalog/main/external-secrets.io/externalsecret_v1beta1.json -apiVersion: external-secrets.io/v1beta1 -kind: ExternalSecret -metadata: - name: sonarr -spec: - refreshInterval: 5m - secretStoreRef: - kind: ClusterSecretStore - name: onepassword-connect - target: - name: sonarr-secret - creationPolicy: Owner - data: - - secretKey: api_key - remoteRef: - key: sonarr - property: api_key diff --git a/kubernetes/apps/downloads/sonarr/app/helmrelease.yaml b/kubernetes/apps/downloads/sonarr/app/helmrelease.yaml deleted file mode 100644 index 497eb3eab..000000000 --- a/kubernetes/apps/downloads/sonarr/app/helmrelease.yaml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json -apiVersion: helm.toolkit.fluxcd.io/v2 -kind: HelmRelease -metadata: - name: sonarr -spec: - interval: 30m - chart: - spec: - chart: app-template - version: 3.5.0 - interval: 30m - sourceRef: - kind: HelmRepository - name: bjw-s - namespace: flux-system - - values: - controllers: - sonarr: - annotations: - reloader.stakater.com/auto: "true" - - pod: - securityContext: - runAsUser: 2000 - runAsGroup: 2000 - runAsNonRoot: true - fsGroup: 2000 - fsGroupChangePolicy: "OnRootMismatch" - supplementalGroups: - - 65542 # gladius:external-services - - containers: - app: - image: - repository: ghcr.io/onedr0p/sonarr-develop - tag: 4.0.9.2457@sha256:d981084e9534a6f4a089926625ba4679089dbced7693460df7d83233177c1f92 - env: - COMPlus_EnableDiagnostics: "0" - SONARR__APP__INSTANCENAME: Sonarr - SONARR__AUTH__APIKEY: - valueFrom: - secretKeyRef: - name: sonarr-secret - key: api_key - SONARR__AUTH__METHOD: External - SONARR__AUTH__REQUIRED: DisabledForLocalAddresses - SONARR__LOG__LEVEL: info - SONARR__SERVER__PORT: &port 8989 - SONARR__UPDATE__BRANCH: develop - probes: - liveness: - enabled: true - readiness: - enabled: true - startup: - enabled: true - spec: - failureThreshold: 30 - periodSeconds: 5 - resources: - requests: - cpu: 20m - memory: 384Mi - limits: - memory: 2Gi - securityContext: - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: - - ALL - - service: - app: - controller: sonarr - ports: - http: - port: *port - - ingress: - app: - className: "internal-nginx" - annotations: - external-dns.alpha.kubernetes.io/target: ingress-int.bjw-s.dev - hosts: - - host: sonarr.bjw-s.dev - paths: - - path: / - service: - identifier: app - port: http - - persistence: - config: - existingClaim: sonarr-config - add-ons: - type: emptyDir - tmp: - type: emptyDir - media: - type: nfs - server: gladius.bjw-s.internal - path: /tank/Media - globalMounts: - - path: /data/nas-media diff --git a/kubernetes/apps/downloads/sonarr/app/kustomization.yaml b/kubernetes/apps/downloads/sonarr/app/kustomization.yaml deleted file mode 100644 index be13d2db0..000000000 --- a/kubernetes/apps/downloads/sonarr/app/kustomization.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -# yaml-language-server: $schema=https://json.schemastore.org/kustomization -apiVersion: kustomize.config.k8s.io/v1beta1 -kind: Kustomization -resources: - - ./externalsecret.yaml - - ./helmrelease.yaml - - ../../../../templates/volsync diff --git a/kubernetes/apps/downloads/sonarr/ks.yaml b/kubernetes/apps/downloads/sonarr/ks.yaml deleted file mode 100644 index 686b470fa..000000000 --- a/kubernetes/apps/downloads/sonarr/ks.yaml +++ /dev/null @@ -1,28 +0,0 @@ ---- -# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &appname sonarr - namespace: flux-system -spec: - targetNamespace: downloads - commonMetadata: - labels: - app.kubernetes.io/name: *appname - interval: 30m - timeout: 5m - path: "./kubernetes/main/apps/downloads/sonarr/app" - prune: true - sourceRef: - kind: GitRepository - name: home-ops-kubernetes - wait: false - dependsOn: - - name: rook-ceph-cluster - - name: volsync - - name: external-secrets-stores - postBuild: - substitute: - APP: *appname - VOLSYNC_CLAIM: sonarr-config