⬆️ recyclarr app-template v2

This commit is contained in:
auricom
2023-11-03 19:12:37 +01:00
parent bf46f5ca23
commit 258bcb2e9a
6 changed files with 320 additions and 187 deletions

View File

@@ -0,0 +1,200 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/recyclarr/recyclarr/master/schemas/config-schema.json
sonarr:
sonarr:
base_url: http://sonarr.default.svc.cluster.local
api_key: !env_var SONARR_API_KEY
delete_old_custom_formats: true
replace_existing_custom_formats: true
quality_definition:
type: series
quality_profiles:
- name: Web 1080p
reset_unmatched_scores:
enabled: true
upgrade:
allowed: true
until_quality: Web-1080p
until_score: 10000
min_format_score: 0
quality_sort: top
qualities:
- name: Web-1080p
qualities:
- WEBDL-1080p
- WEBRip-1080p
- name: HDTV-1080p
- name: Web-720p
qualities:
- WEBDL-720p
- WEBRip-720p
- name: HDTV-720p
- name: Web-480p
qualities:
- WEBDL-480p
- WEBRip-480p
- name: DVD
- name: SDTV
- name: Web 720p
reset_unmatched_scores:
enabled: true
upgrade:
allowed: true
until_quality: Web-720p
until_score: 10000
min_format_score: 0
quality_sort: top
qualities:
- name: Web-720p
qualities:
- WEBDL-720p
- WEBRip-720p
- name: HDTV-720p
- name: Web-480p
qualities:
- WEBDL-480p
- WEBRip-480p
- name: DVD
- name: SDTV
custom_formats:
- trash_ids:
# Unwanted
- 85c61753df5da1fb2aab6f2a47426b09 # BR-DISK
- 9c11cd3f07101cdba90a2d81cf0e56b4 # LQ
- 47435ece6b99a0b477caf360e79ba0bb # x265 (HD)
- fbcb31d8dabd2a319072b84fc0b7249c # Extras
# Misc
- ec8fa7296b64e8cd390a1600981f3923 # Repack/Proper
- eb3d5cc0a2be0db205fb823640db6a3c # Repack v2
- 44e7c4de10ae50265753082e5dc76047 # Repack v3
# Streaming Services
- d660701077794679fd59e8bdf4ce3a29 # AMZN
- f67c9ca88f463a48346062e8ad07713f # ATVP
- 4e9a630db98d5391aec1368a0256e2fe # CRAV
- 36b72f59f4ea20aad9316f475f2d9fbb # DCU
- 89358767a60cc28783cdc3d0be9388a4 # DSNP
- 7a235133c87f7da4c8cccceca7e3c7a6 # HBO
- a880d6abc21e7c16884f3ae393f84179 # HMAX
- f6cce30f1733d5c8194222a7507909bb # HULU
- 0ac24a2a68a9700bcb7eeca8e5cd644c # iT
- 81d1fbf600e2540cee87f3a23f9d3c1c # MAX
- d34870697c9db575f17700212167be23 # NF
- b2b980877494b560443631eb1f473867 # NLZ
- fb1a91cdc0f26f7ca0696e0e95274645 # OViD
- 1656adc6d7bb2c8cca6acfb6592db421 # PCOK
- c67a75ae4a1715f2bb4d492755ba4195 # PMTP
- 3ac5d84fce98bab1b531393e9c82f467 # QIBI
- c30d2958827d1867c73318a5a2957eb1 # RED
- ae58039e1319178e6be73caab5c42166 # SHO
- 1efe8da11bfd74fbbcd4d8117ddb9213 # STAN
- 5d2317d99af813b6529c7ebf01c83533 # VDL
- 77a7b25585c18af08f60b1547bb9b4fb # CC
# HQ Source Groups
- e6258996055b9fbab7e9cb2f75819294 # WEB Tier 01
- 58790d4e2fdcd9733aa7ae68ba2bb503 # WEB Tier 02
- d84935abd3f8556dcd51d4f27e22d0a6 # WEB Tier 03
- d0c516558625b04b363fa6c5c2c7cfd4 # WEB Scene
quality_profiles:
- name: Web 1080p
- name: Web 720p
radarr:
radarr:
base_url: http://radarr.default.svc.cluster.local
api_key: !env_var RADARR_API_KEY
delete_old_custom_formats: true
replace_existing_custom_formats: true
quality_definition:
type: movie
quality_profiles:
- name: Remux/Web 1080p
reset_unmatched_scores:
enabled: true
upgrade:
allowed: true
until_quality: Remux-1080p
until_score: 10000
min_format_score: 0
quality_sort: top
qualities:
- name: Remux-1080p
- name: Bluray-1080p
enabled: false
- name: Web-1080p
qualities:
- WEBDL-1080p
- WEBRip-1080p
- name: HDTV-1080p
custom_formats:
- trash_ids:
# Audio
- 496f355514737f7d83bf7aa4d24f8169 # TrueHD Atmos
- 2f22d89048b01681dde8afe203bf2e95 # DTS X
- 417804f7f2c4308c1f4c5d380d4c4475 # ATMOS (undefined)
- 1af239278386be2919e1bcee0bde047e # DD+ ATMOS
- 3cafb66171b47f226146a0770576870f # TrueHD
- dcf3ec6938fa32445f590a4da84256cd # DTS-HD MA
- a570d4a0e56a2874b64e5bfa55202a1b # FLAC
- e7c2fcae07cbada050a0af3357491d7b # PCM
- 8e109e50e0a0b83a5098b056e13bf6db # DTS-HD HRA
- 185f1dd7264c4562b9022d963ac37424 # DD+
- f9f847ac70a0af62ea4a08280b859636 # DTS-ES
- 1c1a4c5e823891c75bc50380a6866f73 # DTS
- 240770601cc226190c367ef59aba7463 # AAC
- c2998bd0d90ed5621d8df281e839436e # DD
# Movie Versions
- 0f12c086e289cf966fa5948eac571f44 # Hybrid
- 570bc9ebecd92723d2d21500f4be314c # Remaster
- eca37840c13c6ef2dd0262b141a5482f # 4K Remaster
- e0c07d59beb37348e975a930d5e50319 # Criterion Collection
- 9d27d9d2181838f76dee150882bdc58c # Masters of Cinema
- db9b4c4b53d312a3ca5f1378f6440fc9 # Vinegar Syndrome
- 957d0f44b592285f26449575e8b1167e # Special Edition
- eecf3a857724171f968a66cb5719e152 # IMAX
- 9f6cbff8cfe4ebbc1bde14c7b7bec0de # IMAX Enhanced
# HQ Release Groups
- 3a3ff47579026e76d6504ebea39390de # Remux Tier 01
- 9f98181fe5a3fbeb0cc29340da2a468a # Remux Tier 02
- 8baaf0b3142bf4d94c42a724f034e27a # Remux Tier 03
- c20f169ef63c5f40c2def54abaf4438e # WEB Tier 01
- 403816d65392c79236dcb6dd591aeda4 # WEB Tier 02
- af94e0fe497124d1f9ce732069ec8c3b # WEB Tier 03
# Misc
- e7718d7a3ce595f289bfee26adc178f5 # Repack/Proper
- ae43b294509409a6a13919dedd4764c4 # Repack2
# Unwanted
- ed38b889b31be83fda192888e2286d83 # BR-DISK
- 90a6f9a284dff5103f6346090e6280c8 # LQ
- dc98083864ea246d05a42df0d05f81cc # x265 (HD)
- b8cd450cbfa689c0259a01d9e29ba3d6 # 3D
# Streaming Services
- cc5e51a9e85a6296ceefe097a77f12f4 # BCORE
- 2a6039655313bf5dab1e43523b62c374 # MA
- 16622a6911d1ab5d5b8b713d5b0036d4 # CRiT
quality_profiles:
- name: Remux/Web 1080p
- trash_ids:
# Streaming Services
- b3b3a6ac74ecbd56bcdbefa4799fb9df # AMZN
- 40e9380490e748672c2522eaaeb692f7 # ATVP
- f6ff65b3f4b464a79dcc75950fe20382 # CRAV
- 84272245b2988854bfb76a16e60baea5 # DSNP
- 509e5f41146e278f9eab1ddaceb34515 # HBO
- 5763d1b0ce84aff3b21038eea8e9b8ad # HMAX
- 526d445d4c16214309f0fd2b3be18a89 # Hulu
- 6a061313d22e51e0f25b7cd4dc065233 # MAX
- 170b1d363bd8516fbf3a3eb05d4faff6 # NF
- fbca986396c5e695ef7b2def3c755d01 # OViD
- bf7e73dd1d85b12cc527dc619761c840 # Pathe
- c9fd353f8f5f1baf56dc601c4cb29920 # PCOK
- e36a0ba1bc902b26ee40818a1d59b8bd # PMTP
- c2863d2a50c9acad1fb50e53ece60817 # STAN
quality_profiles:
- name: Remux/Web 1080p
score: 0

View File

@@ -0,0 +1,26 @@
---
# yaml-language-server: $schema=https://kubernetes-schemas.devbu.io/external-secrets.io/externalsecret_v1beta1.json
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: recyclarr
namespace: default
spec:
secretStoreRef:
kind: ClusterSecretStore
name: onepassword-connect
target:
name: recyclarr-secret
creationPolicy: Owner
template:
engineVersion: v2
data:
RADARR_API_KEY: "{{ .RADARR__API_KEY }}"
SONARR_API_KEY: "{{ .SONARR__API_KEY }}"
dataFrom:
- extract:
key: radarr
property: RADARR__API_KEY
- extract:
key: sonarr
property: SONARR__API_KEY

View File

@@ -10,7 +10,7 @@ spec:
chart:
spec:
chart: app-template
version: 1.5.1
version: 2.0.3
sourceRef:
kind: HelmRepository
name: bjw-s
@@ -27,31 +27,49 @@ spec:
uninstall:
keepHistory: false
values:
controller:
type: cronjob
cronjob:
schedule: "@daily"
ttlSecondsAfterFinished: 86400
restartPolicy: OnFailure
image:
repository: ghcr.io/recyclarr/recyclarr
tag: edge@sha256:47bef6aa6f247d57cf5c3666d0202f9ce8fd26bc7f5c4379cba84cfad3173c50
command: ["/app/recyclarr/recyclarr"]
args: ["sync"]
envFrom:
- secretRef:
name: radarr-secret
- secretRef:
name: sonarr-secret
controllers:
main:
type: statefulset
annotations:
reloader.stakater.com/auto: "true"
containers:
main:
image:
repository: ghcr.io/recyclarr/recyclarr
tag: 6.0.2
env:
TZ: ${TIMEZONE}
envFrom:
- secretRef:
name: recyclarr-secret
resources:
requests:
cpu: 10m
memory: 64M
limits:
memory: 128M
pod:
securityContext:
runAsUser: 568
runAsGroup: 568
fsGroup: 568
fsGroupChangePolicy: OnRootMismatch
statefulset:
volumeClaimTemplates:
- name: config
accessMode: ReadWriteOnce
size: 1Gi
storageClass: rook-ceph-block
globalMounts:
- path: /config
service:
main:
enabled: false
persistence:
config:
enabled: true
config-file:
type: configMap
name: recyclarr-configmap
subPath: recyclarr.yml
mountPath: /config/recyclarr.yml
defaultMode: 0775
readOnly: true
globalMounts:
- path: /config/recyclarr.yml
subPath: recyclarr.yml
readOnly: true

View File

@@ -1,14 +1,16 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: default
resources:
- ./externalsecret.yaml
- ./helmrelease.yaml
- ./volsync.yaml
configMapGenerator:
- name: recyclarr-configmap
files:
- ./recyclarr.yml
- recyclarr.yml=./config/recyclarr.yml
generatorOptions:
disableNameSuffixHash: true
annotations:

View File

@@ -1,162 +0,0 @@
---
# A starter config to use with Trash Updater. Most values are set to "reasonable defaults".
# Update the values below as needed for your instance. You will be required to update the
# API Key and URL for each instance you want to use.
#
# Many optional settings have been omitted to keep this template simple.
#
# For more details on the configuration, see the Configuration Reference on the wiki here:
# https://github.com/rcdailey/trash-updater/wiki/Configuration-Reference
sonarr:
standard:
base_url: http://sonarr.default.svc.cluster.local:8080
api_key: !env_var SONARR__API_KEY
delete_old_custom_formats: true
quality_definition:
type: series
custom_formats:
- trash_ids:
# Streaming Services
- d660701077794679fd59e8bdf4ce3a29 # AMZN
- f67c9ca88f463a48346062e8ad07713f # ATVP
- 36b72f59f4ea20aad9316f475f2d9fbb # DCU
- 89358767a60cc28783cdc3d0be9388a4 # DSNP
- 7a235133c87f7da4c8cccceca7e3c7a6 # HBO
- a880d6abc21e7c16884f3ae393f84179 # HMAX
- f6cce30f1733d5c8194222a7507909bb # HULU
- 0ac24a2a68a9700bcb7eeca8e5cd644c # iT
- d34870697c9db575f17700212167be23 # NF
- 1656adc6d7bb2c8cca6acfb6592db421 # PCOK
- c67a75ae4a1715f2bb4d492755ba4195 # PMTP
- 3ac5d84fce98bab1b531393e9c82f467 # QIBI
- c30d2958827d1867c73318a5a2957eb1 # RED
- ae58039e1319178e6be73caab5c42166 # SHO
# Allowed Scene groups and tiered P2P groups
- d0c516558625b04b363fa6c5c2c7cfd4 # WEB Scene (allowed Scene groups)
- e6258996055b9fbab7e9cb2f75819294 # WEB Tier 01
- 58790d4e2fdcd9733aa7ae68ba2bb503 # WEB Tier 02
- d84935abd3f8556dcd51d4f27e22d0a6 # WEB Tier 03
# Repacks / Propers
- ec8fa7296b64e8cd390a1600981f3923 # Repack/Proper
- eb3d5cc0a2be0db205fb823640db6a3c # Repack v2
- 44e7c4de10ae50265753082e5dc76047 # Repack v3
# HDR Metadata
- 7878c33f1963fefb3d6c8657d46c2f0a # DV HDR10
- 1f733af03141f068a540eec352589a89 # DV HLG
- 27954b0a80aab882522a88a4d9eae1cd # DV SDR
- 6d0d8de7b57e35518ac0308b0ddf404e # DV
- bb019e1cd00f304f80971c965de064dc # HDR (undefined)
- 3e2c4e748b64a1a1118e0ea3f4cf6875 # HDR
- 3497799d29a085e2ac2df9d468413c94 # HDR10
- a3d82cbef5039f8d295478d28a887159 # HDR10+
- 17e889ce13117940092308f48b48b45b # HLG
- 2a7e3be05d3861d6df7171ec74cad727 # PQ
# Unwanted
- 32b367365729d530ca1c124a0b180c64 # Bad Dual Groups
- 85c61753df5da1fb2aab6f2a47426b09 # BR-DISK
- 9c14d194486c4014d422adc64092d794 # Dubs Only
- 9c11cd3f07101cdba90a2d81cf0e56b4 # LQ
- 82d40da2bc6923f41e14394075dd4b03 # No-RlsGroup
- e1a997ddb54e3ecbfe06341ad323c458 # Obfuscated
- 06d66ab109d4d2eddb2794d21526d140 # Retags
- 47435ece6b99a0b477caf360e79ba0bb # x265 (HD)
quality_profiles:
- name: Any
reset_unmatched_scores: true
- name: HD
reset_unmatched_scores: true
- name: SD
reset_unmatched_scores: true
radarr:
standard:
base_url: http://radarr.default.svc.cluster.local:8080
api_key: !env_var RADARR__API_KEY
delete_old_custom_formats: true
quality_definition:
type: movie
custom_formats:
- trash_ids:
- ff5bc9e8ce91d46c997ca3ac6994d6f8 # UHD FraMeSToR (set to 0, 1 or 3200)
quality_profiles:
- name: Any
score: 1
- name: HD
score: 1
- name: Remux
score: 1
- trash_ids:
- 496f355514737f7d83bf7aa4d24f8169 # TrueHD Atmos
- 2f22d89048b01681dde8afe203bf2e95 # DTS X
- 417804f7f2c4308c1f4c5d380d4c4475 # ATMOS (undefined)
- 1af239278386be2919e1bcee0bde047e # DD+ Atmos
- 3cafb66171b47f226146a0770576870f # TrueHD
- dcf3ec6938fa32445f590a4da84256cd # DTS-HD MA
- a570d4a0e56a2874b64e5bfa55202a1b # FLAC
- e7c2fcae07cbada050a0af3357491d7b # PCM
- 8e109e50e0a0b83a5098b056e13bf6db # DTS-HD HRA
- 185f1dd7264c4562b9022d963ac37424 # DD+
- f9f847ac70a0af62ea4a08280b859636 # DTS-ES
- 1c1a4c5e823891c75bc50380a6866f73 # DTS
- 240770601cc226190c367ef59aba7463 # ACC
- c2998bd0d90ed5621d8df281e839436e # DD
- e23edd2482476e595fb990b12e7c609c # DV HDR10 HDR/DV Custom Formats
- 58d6a88f13e2db7f5059c41047876f00 # DV
- 55d53828b9d81cbe20b02efd00aa0efd # DV HLG HDR/DV Custom Formats
- a3e19f8f627608af0211acd02bf89735 # DV SDR HDR/DV Custom Formats
- b974a6cd08c1066250f1f177d7aa1225 # HDR10Plus
- dfb86d5941bc9075d6af23b09c2aeecd # HDR10
- e61e28db95d22bedcadf030b8f156d96 # HDR
- 2a4d9069cc1fe3242ff9bdaebed239bb # HDR (Undefined)
- 08d6d8834ad9ec87b1dc7ec8148e7a1f # PQ several HDR/DV Custom Formats
- 9364dd386c9b4a1100dde8264690add7 # HLG
- 0f12c086e289cf966fa5948eac571f44 # Hybrid
- 570bc9ebecd92723d2d21500f4be314c # Remaster
- eca37840c13c6ef2dd0262b141a5482f # 4K Remaster
- e0c07d59beb37348e975a930d5e50319 # Criterion Collection
- 957d0f44b592285f26449575e8b1167e # Special Edition
- eecf3a857724171f968a66cb5719e152 # IMAX
- 9f6cbff8cfe4ebbc1bde14c7b7bec0de # IMAX Enhanced
- 403f3f6266b90439cacc1e07cae4dc2d # HQ-Remux
- 26fa26253af4001701fedb56cec376dc # HQ-Webdl
- 66aaa8c2c03c0191a95f0d655b75ab10 # UHD CtrlHD
- 4da96773192a51cf96178212642ca3bb # UHD LEGi0N
- 96848626e1570c122aba8642fe2714a2 # UHD HQMUX
- ffebc267e9c98d3d383f37b238550079 # UHD W4NK3R
- ac49fdbf6a662d380556f40ff4856f29 # UHD WEBDV
- afeb99e5db09290546f742503ce1cdb6 # UHD DON
- e7718d7a3ce595f289bfee26adc178f5 # Repack
- ed38b889b31be83fda192888e2286d83 # BR-DISK -10000
- 90cedc1fea7ea5d11298bebd3d1d3223 # EVO (no WEBDL) -1000
- 90a6f9a284dff5103f6346090e6280c8 # LQ -10000
- b8cd450cbfa689c0259a01d9e29ba3d6 # 3D -10000
- 7357cf5161efbf8c4d5d0c30b4815ee2 # Obfuscated
- ae9b7c9ebde1f3bd336a8cbd1ec4c5e5 # No-RlsGroup removed do avoid multiple downloads
- dc98083864ea246d05a42df0d05f81cc # x265 (720/1080p)
quality_profiles:
- name: Any
reset_unmatched_scores: true
- name: HD
reset_unmatched_scores: true
- name: SD
reset_unmatched_scores: true
- trash_ids:
- 1c7d7b04b15cc53ea61204bebbcc1ee2 # HQ
quality_profiles:
- name: Any
score: 0
- name: HD
score: 0
- name: SD
score: 0
- trash_ids:
- 4b900e171accbfb172729b63323ea8ca # Optional: Multi
- 923b6abef9b17f937fab56cfcf89e1f1 # Optional: DV (WEBDL) without fallback to HDR, set to manual score 0 or -10000
quality_profiles:
- name: Any
score: 0
- name: HD
score: 0
- name: SD
score: 0

View File

@@ -0,0 +1,49 @@
---
# yaml-language-server: $schema=https://kubernetes-schemas.devbu.io/external-secrets.io/externalsecret_v1beta1.json
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: recyclarr-restic
namespace: default
spec:
secretStoreRef:
kind: ClusterSecretStore
name: onepassword-connect
target:
name: recyclarr-restic-secret
creationPolicy: Owner
template:
engineVersion: v2
data:
RESTIC_REPOSITORY: '{{ .REPOSITORY_TEMPLATE }}/recyclarr'
RESTIC_PASSWORD: '{{ .RESTIC_PASSWORD }}'
AWS_ACCESS_KEY_ID: '{{ .AWS_ACCESS_KEY_ID }}'
AWS_SECRET_ACCESS_KEY: '{{ .AWS_SECRET_ACCESS_KEY }}'
dataFrom:
- extract:
key: volsync-restic-template
---
# yaml-language-server: $schema=https://kubernetes-schemas.devbu.io/volsync.backube/replicationsource_v1alpha1.json
apiVersion: volsync.backube/v1alpha1
kind: ReplicationSource
metadata:
name: recyclarr
namespace: default
spec:
sourcePVC: config-recyclarr-0
trigger:
schedule: "0 7 * * *"
restic:
copyMethod: Snapshot
pruneIntervalDays: 7
repository: recyclarr-restic-secret
cacheCapacity: 8Gi
volumeSnapshotClassName: csi-ceph-blockpool
storageClassName: rook-ceph-block
moverSecurityContext:
runAsUser: 568
runAsGroup: 568
fsGroup: 568
retain:
daily: 7
within: 3d