diff --git a/kubernetes/apps/default/kustomization.yaml b/kubernetes/apps/default/kustomization.yaml index 20940cc1b..12b7b321f 100644 --- a/kubernetes/apps/default/kustomization.yaml +++ b/kubernetes/apps/default/kustomization.yaml @@ -41,6 +41,7 @@ resources: - ./readeck/ks.yaml - ./recyclarr/ks.yaml - ./redlib/ks.yaml + - ./renamarr/ks.yaml - ./sabnzbd/ks.yaml - ./sharry/ks.yaml - ./sonarr/ks.yaml diff --git a/kubernetes/apps/default/renamarr/app/config/config.yml b/kubernetes/apps/default/renamarr/app/config/config.yml new file mode 100644 index 000000000..ae2cb4528 --- /dev/null +++ b/kubernetes/apps/default/renamarr/app/config/config.yml @@ -0,0 +1,19 @@ +sonarr: + - name: tv + url: https://sonarr.default.svc.cluster.local.:8080 + api_key: !env_var SONARR_API_KEY + renamarr: + enabled: true + hourly_job: false + analyze_files: true + series_scanner: + enabled: false + hourly_job: false +radarr: + - name: radarr + url: https://radarr.default.svc.cluster.local.:8080 + api_key: !env_var RADARR_API_KEY + renamarr: + enabled: true + hourly_job: false + analyze_files: true diff --git a/kubernetes/apps/default/renamarr/app/externalsecret.yaml b/kubernetes/apps/default/renamarr/app/externalsecret.yaml new file mode 100644 index 000000000..cd9680c0a --- /dev/null +++ b/kubernetes/apps/default/renamarr/app/externalsecret.yaml @@ -0,0 +1,24 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/external-secrets.io/externalsecret_v1.json +apiVersion: external-secrets.io/v1 +kind: ExternalSecret +metadata: + name: renamarr +spec: + secretStoreRef: + kind: ClusterSecretStore + name: onepassword-connect + target: + name: renamarr-secret + 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 diff --git a/kubernetes/apps/default/renamarr/app/helmrelease.yaml b/kubernetes/apps/default/renamarr/app/helmrelease.yaml new file mode 100644 index 000000000..038377118 --- /dev/null +++ b/kubernetes/apps/default/renamarr/app/helmrelease.yaml @@ -0,0 +1,53 @@ +--- +# 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: &app renamarr + namespace: default +spec: + interval: 1h + chartRef: + kind: OCIRepository + name: app-template + namespace: flux-system + install: + remediation: + retries: 3 + upgrade: + cleanupOnFail: true + remediation: + strategy: rollback + retries: 3 + values: + controllers: + renamarr: + type: cronjob + cronjob: + concurrencyPolicy: Forbid + schedule: 0 */12 * * * # Every 12 hours + containers: + app: + image: + repository: ghcr.io/hollanbm/renamarr + tag: 1.0.6@sha256:4795978d5edbeb087cc26c9c3874583ccab3f1327006efff8bd3541f8334c2b7 + envFrom: + - secretRef: + name: renamarr-secret + resources: + requests: + cpu: 20m + memory: 256M + service: + app: + controller: *app + enabled: false + persistence: + scripts: + type: configMap + name: renamarr-configmap + defaultMode: 0444 # trunk-ignore(yamllint/octal-values) + globalMounts: + - path: /config/config.yml + subPath: config.yml + readOnly: true diff --git a/kubernetes/apps/default/renamarr/app/kustomization.yaml b/kubernetes/apps/default/renamarr/app/kustomization.yaml new file mode 100644 index 000000000..bfad795b1 --- /dev/null +++ b/kubernetes/apps/default/renamarr/app/kustomization.yaml @@ -0,0 +1,16 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/schemas/json/kustomization.json +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +namespace: default +resources: + - ./externalsecret.yaml + - ./helmrelease.yaml +configMapGenerator: + - name: renamarr-configmap + files: + - ./config/config.yml +generatorOptions: + disableNameSuffixHash: true + annotations: + kustomize.toolkit.fluxcd.io/substitute: disabled diff --git a/kubernetes/apps/default/renamarr/ks.yaml b/kubernetes/apps/default/renamarr/ks.yaml new file mode 100644 index 000000000..f188ce293 --- /dev/null +++ b/kubernetes/apps/default/renamarr/ks.yaml @@ -0,0 +1,25 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: &app renamarr + namespace: &namespace default +spec: + commonMetadata: + labels: + app.kubernetes.io/name: *app + interval: 1h + path: ./kubernetes/apps/default/renamarr/app + postBuild: + substitute: + APP: *app + prune: true + retryInterval: 2m + sourceRef: + kind: GitRepository + name: home-ops-kubernetes + namespace: flux-system + targetNamespace: *namespace + timeout: 5m + wait: false