diff --git a/clusters/cl01tl/helm/lidarr/Chart.yaml b/clusters/cl01tl/helm/lidarr/Chart.yaml index 160d95eb2..06d42248f 100644 --- a/clusters/cl01tl/helm/lidarr/Chart.yaml +++ b/clusters/cl01tl/helm/lidarr/Chart.yaml @@ -31,5 +31,5 @@ dependencies: version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/lidarr.png -# renovate: github=Lidarr/Lidarr +# renovate: github=linuxserver/lidarr appVersion: 3.1.0 diff --git a/clusters/cl01tl/helm/prowlarr/Chart.yaml b/clusters/cl01tl/helm/prowlarr/Chart.yaml index afcb1d26f..68552c183 100644 --- a/clusters/cl01tl/helm/prowlarr/Chart.yaml +++ b/clusters/cl01tl/helm/prowlarr/Chart.yaml @@ -24,4 +24,5 @@ dependencies: version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/prowlarr.png +# renovate: github=linuxserver/prowlarr appVersion: 2.3.0 diff --git a/clusters/cl01tl/helm/prowlarr/templates/http-route.yaml b/clusters/cl01tl/helm/prowlarr/templates/http-route.yaml deleted file mode 100644 index 8e202e8b4..000000000 --- a/clusters/cl01tl/helm/prowlarr/templates/http-route.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-prowlarr - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-prowlarr - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - prowlarr.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: prowlarr - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/prowlarr/values.yaml b/clusters/cl01tl/helm/prowlarr/values.yaml index a6959ff91..6c770adf6 100644 --- a/clusters/cl01tl/helm/prowlarr/values.yaml +++ b/clusters/cl01tl/helm/prowlarr/values.yaml @@ -37,6 +37,27 @@ prowlarr: port: 80 targetPort: 9696 protocol: HTTP + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - prowlarr.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: prowlarr + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: config: forceRename: prowlarr-config diff --git a/clusters/cl01tl/helm/qbittorrent/Chart.yaml b/clusters/cl01tl/helm/qbittorrent/Chart.yaml index 4b7a723dd..be0891f0e 100644 --- a/clusters/cl01tl/helm/qbittorrent/Chart.yaml +++ b/clusters/cl01tl/helm/qbittorrent/Chart.yaml @@ -39,4 +39,5 @@ dependencies: version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/qbittorrent.png +# renovate: github=linuxserver/qbittorrent appVersion: 5.1.4 diff --git a/clusters/cl01tl/helm/qbittorrent/templates/http-route.yaml b/clusters/cl01tl/helm/qbittorrent/templates/http-route.yaml deleted file mode 100644 index e5a3672ab..000000000 --- a/clusters/cl01tl/helm/qbittorrent/templates/http-route.yaml +++ /dev/null @@ -1,58 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-qbittorrent - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-qbittorrent - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - qbittorrent.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: qbittorrent - port: 8080 - weight: 100 - ---- -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-qui - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-qui - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - qui.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: qbittorrent-qui - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/qbittorrent/templates/service-monitor.yaml b/clusters/cl01tl/helm/qbittorrent/templates/service-monitor.yaml deleted file mode 100644 index 887c6d096..000000000 --- a/clusters/cl01tl/helm/qbittorrent/templates/service-monitor.yaml +++ /dev/null @@ -1,64 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: qbittorrent - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: qbittorrent - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - endpoints: - - port: metrics - interval: 30s - scrapeTimeout: 15s - path: /metrics - selector: - matchLabels: - app.kubernetes.io/service: qbittorrent - app.kubernetes.io/name: {{ .Release.Name }} - app.kubernetes.io/instance: {{ .Release.Name }} - ---- -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: qbittorrent-apprise - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: qbittorrent-apprise - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - endpoints: - - port: apprise - interval: 30s - scrapeTimeout: 15s - path: /metrics - selector: - matchLabels: - app.kubernetes.io/service: qbittorrent-qbit-manage - app.kubernetes.io/name: {{ .Release.Name }} - app.kubernetes.io/instance: {{ .Release.Name }} - ---- -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: qbittorrent-qui - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: qbittorrent-qui - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - endpoints: - - port: metrics - interval: 30s - scrapeTimeout: 15s - path: /metrics - selector: - matchLabels: - app.kubernetes.io/service: qbittorrent-qui - app.kubernetes.io/name: {{ .Release.Name }} - app.kubernetes.io/instance: {{ .Release.Name }} diff --git a/clusters/cl01tl/helm/qbittorrent/values.yaml b/clusters/cl01tl/helm/qbittorrent/values.yaml index d7c9b4f33..844bb54dd 100644 --- a/clusters/cl01tl/helm/qbittorrent/values.yaml +++ b/clusters/cl01tl/helm/qbittorrent/values.yaml @@ -264,6 +264,81 @@ qbittorrent: port: 9074 targetPort: 9074 protocol: HTTP + serviceMonitor: + main: + selector: + matchLabels: + app.kubernetes.io/name: qbittorrent + app.kubernetes.io/instance: qbittorrent + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 30s + scrapeTimeout: 15s + path: /metrics + apprise: + selector: + matchLabels: + app.kubernetes.io/name: qbittorrent-apprise + app.kubernetes.io/instance: qbittorrent-apprise + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: apprise + interval: 30s + scrapeTimeout: 15s + path: /metrics + qui: + selector: + matchLabels: + app.kubernetes.io/name: qbittorrent-qui + app.kubernetes.io/instance: qbittorrent-qui + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 30s + scrapeTimeout: 15s + path: /metrics + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - qbittorrent.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: qbittorrent + port: 8080 + weight: 100 + matches: + - path: + type: PathPrefix + value: / + qui: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - qui.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: qbittorrent-qui + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: update-script: enabled: true diff --git a/clusters/cl01tl/helm/radarr-4k/Chart.lock b/clusters/cl01tl/helm/radarr-4k/Chart.lock index 5138ab119..6832cc623 100644 --- a/clusters/cl01tl/helm/radarr-4k/Chart.lock +++ b/clusters/cl01tl/helm/radarr-4k/Chart.lock @@ -4,9 +4,9 @@ dependencies: version: 4.5.0 - name: postgres-cluster repository: oci://harbor.alexlebens.net/helm-charts - version: 7.1.4 + version: 7.4.3 - name: volsync-target repository: oci://harbor.alexlebens.net/helm-charts version: 0.6.0 -digest: sha256:bf34c86694b2e5d3c981b3c988609a7d407b7bf027856d171bd388a278838c6a -generated: "2025-12-21T19:05:34.741990728Z" +digest: sha256:74f58fd7e4e5fd5cbe24e807df87bebca5c8736a7933aad7c83bb236096008b5 +generated: "2025-12-23T23:21:24.369182-06:00" diff --git a/clusters/cl01tl/helm/radarr-4k/Chart.yaml b/clusters/cl01tl/helm/radarr-4k/Chart.yaml index 9bfcc75ec..fc91ca4e2 100644 --- a/clusters/cl01tl/helm/radarr-4k/Chart.yaml +++ b/clusters/cl01tl/helm/radarr-4k/Chart.yaml @@ -27,11 +27,12 @@ dependencies: version: 4.5.0 - name: postgres-cluster alias: postgres-18-cluster - version: 7.1.4 + version: 7.4.3 repository: oci://harbor.alexlebens.net/helm-charts - name: volsync-target alias: volsync-target-config version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/radarr-4k.png +# renovate: github=linuxserver/radarr appVersion: 6.0.4 diff --git a/clusters/cl01tl/helm/radarr-4k/templates/external-secret.yaml b/clusters/cl01tl/helm/radarr-4k/templates/external-secret.yaml deleted file mode 100644 index 547b8da47..000000000 --- a/clusters/cl01tl/helm/radarr-4k/templates/external-secret.yaml +++ /dev/null @@ -1,65 +0,0 @@ -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-4k-postgresql-18-cluster-backup-secret - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-4k-postgresql-18-cluster-backup-secret - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: access - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: secret - ---- -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-4k-postgresql-18-cluster-backup-secret-garage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-4k-postgresql-18-cluster-backup-secret-garage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_KEY_ID - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_SECRET_KEY - - secretKey: ACCESS_REGION - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_REGION diff --git a/clusters/cl01tl/helm/radarr-4k/templates/http-route.yaml b/clusters/cl01tl/helm/radarr-4k/templates/http-route.yaml deleted file mode 100644 index 029939f6b..000000000 --- a/clusters/cl01tl/helm/radarr-4k/templates/http-route.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-radarr-4k - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-radarr-4k - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - radarr-4k.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: radarr-4k - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/radarr-4k/templates/service-monitor.yaml b/clusters/cl01tl/helm/radarr-4k/templates/service-monitor.yaml deleted file mode 100644 index 57d1ab55c..000000000 --- a/clusters/cl01tl/helm/radarr-4k/templates/service-monitor.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: radarr-4k - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-4k - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - selector: - matchLabels: - app.kubernetes.io/name: radarr-4k - app.kubernetes.io/instance: {{ .Release.Name }} - endpoints: - - port: metrics - interval: 3m - scrapeTimeout: 1m - path: /metrics diff --git a/clusters/cl01tl/helm/radarr-4k/values.yaml b/clusters/cl01tl/helm/radarr-4k/values.yaml index 5e22aee4a..219ac72f8 100644 --- a/clusters/cl01tl/helm/radarr-4k/values.yaml +++ b/clusters/cl01tl/helm/radarr-4k/values.yaml @@ -61,6 +61,39 @@ radarr-4k: port: 9793 targetPort: 9793 protocol: TCP + serviceMonitor: + main: + selector: + matchLabels: + app.kubernetes.io/name: radarr-4k + app.kubernetes.io/instance: radarr-4k + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 3m + scrapeTimeout: 1m + path: /metrics + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - radarr-4k.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: radarr-4k + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: config: forceRename: radarr-4k-config @@ -86,64 +119,50 @@ radarr-4k: postgres-18-cluster: mode: recovery cluster: - storage: - storageClass: local-path - walStorage: - storageClass: local-path initdb: - database: app - owner: app postInitSQL: - CREATE DATABASE IF NOT EXISTS "radarr-main" OWNER "app"; - CREATE DATABASE IF NOT EXISTS "radarr-log" OWNER "app"; recovery: method: objectStore objectStore: - destinationPath: s3://postgres-backups/cl01tl/radarr-4k/radarr-4k-postgresql-18-cluster - endpointURL: http://garage-main.garage:3900 index: 1 - endpointCredentials: radarr-4k-postgresql-18-cluster-backup-secret-garage backup: objectStore: - name: garage-local - destinationPath: s3://postgres-backups/cl01tl/radarr-4k/radarr-4k-postgresql-18-cluster index: 1 - endpointURL: http://garage-main.garage:3900 - endpointCredentials: radarr-4k-postgresql-18-cluster-backup-secret-garage - endpointCredentialsIncludeRegion: true - retentionPolicy: "3d" + destinationBucket: postgres-backups + externalSecretCredentialPath: /garage/home-infra/postgres-backups isWALArchiver: true - # - name: external - # destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/radarr-4k/radarr-4k-postgresql-18-cluster - # index: 1 - # endpointCredentials: radarr-4k-postgresql-18-cluster-backup-secret - # retentionPolicy: "30d" - # isWALArchiver: false # - name: garage-remote - # destinationPath: s3://postgres-backups/cl01tl/radarr-4k/radarr-4k-postgresql-18-cluster # index: 1 - # endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900 - # endpointCredentials: radarr-4k-postgresql-18-cluster-backup-secret-garage - # retentionPolicy: "30d" + # destinationBucket: postgres-backups + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # retentionPolicy: "90d" # data: # compression: bzip2 - # jobs: 2 + # - name: external + # index: 1 + # endpointURL: https://nyc3.digitaloceanspaces.com + # destinationBucket: postgres-backups-ce540ddf106d186bbddca68a + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # isWALArchiver: false scheduledBackups: - name: live-backup suspend: false immediate: true schedule: "0 0 0 * * *" backupName: garage-local - # - name: daily-backup - # suspend: false - # immediate: true - # schedule: "0 0 0 * * *" - # backupName: external # - name: weekly-backup # suspend: true # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote + # - name: daily-backup + # suspend: true + # immediate: true + # schedule: "0 0 0 * * *" + # backupName: external volsync-target-config: pvcTarget: radarr-4k-config moverSecurityContext: diff --git a/clusters/cl01tl/helm/radarr-anime/Chart.lock b/clusters/cl01tl/helm/radarr-anime/Chart.lock index bb08b42f7..63c1c5ad7 100644 --- a/clusters/cl01tl/helm/radarr-anime/Chart.lock +++ b/clusters/cl01tl/helm/radarr-anime/Chart.lock @@ -4,9 +4,9 @@ dependencies: version: 4.5.0 - name: postgres-cluster repository: oci://harbor.alexlebens.net/helm-charts - version: 7.1.4 + version: 7.4.3 - name: volsync-target repository: oci://harbor.alexlebens.net/helm-charts version: 0.6.0 -digest: sha256:a14aee2c010e6abead9edf2f001a5bfaa59c5a6a483bbfd237e41ca5072b7927 -generated: "2025-12-21T19:05:52.38126741Z" +digest: sha256:8455777f6acc2e2722dfbbca78ebcb92be3d9af998c4ae0106b50625732ae71c +generated: "2025-12-23T23:24:42.792877-06:00" diff --git a/clusters/cl01tl/helm/radarr-anime/Chart.yaml b/clusters/cl01tl/helm/radarr-anime/Chart.yaml index 1d7e056d7..fde0e798d 100644 --- a/clusters/cl01tl/helm/radarr-anime/Chart.yaml +++ b/clusters/cl01tl/helm/radarr-anime/Chart.yaml @@ -27,11 +27,12 @@ dependencies: version: 4.5.0 - name: postgres-cluster alias: postgres-18-cluster - version: 7.1.4 + version: 7.4.3 repository: oci://harbor.alexlebens.net/helm-charts - name: volsync-target alias: volsync-target-config version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/radarr-anime.png +# renovate: github=linuxserver/radarr appVersion: 6.0.4 diff --git a/clusters/cl01tl/helm/radarr-anime/templates/external-secret.yaml b/clusters/cl01tl/helm/radarr-anime/templates/external-secret.yaml deleted file mode 100644 index 18bae117f..000000000 --- a/clusters/cl01tl/helm/radarr-anime/templates/external-secret.yaml +++ /dev/null @@ -1,65 +0,0 @@ -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-anime-postgresql-18-cluster-backup-secret - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-anime-postgresql-18-cluster-backup-secret - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: access - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: secret - ---- -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-anime-postgresql-18-cluster-backup-secret-garage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-anime-postgresql-18-cluster-backup-secret-garage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_KEY_ID - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_SECRET_KEY - - secretKey: ACCESS_REGION - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_REGION diff --git a/clusters/cl01tl/helm/radarr-anime/templates/http-route.yaml b/clusters/cl01tl/helm/radarr-anime/templates/http-route.yaml deleted file mode 100644 index 7fd42815c..000000000 --- a/clusters/cl01tl/helm/radarr-anime/templates/http-route.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-radarr-anime - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-radarr-anime - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - radarr-anime.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: radarr-anime - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/radarr-anime/templates/service-monitor.yaml b/clusters/cl01tl/helm/radarr-anime/templates/service-monitor.yaml deleted file mode 100644 index a25b96e8b..000000000 --- a/clusters/cl01tl/helm/radarr-anime/templates/service-monitor.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: radarr-anime - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-anime - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - selector: - matchLabels: - app.kubernetes.io/name: radarr-anime - app.kubernetes.io/instance: {{ .Release.Name }} - endpoints: - - port: metrics - interval: 3m - scrapeTimeout: 1m - path: /metrics diff --git a/clusters/cl01tl/helm/radarr-anime/values.yaml b/clusters/cl01tl/helm/radarr-anime/values.yaml index f8d9e5ee5..7a3246dd7 100644 --- a/clusters/cl01tl/helm/radarr-anime/values.yaml +++ b/clusters/cl01tl/helm/radarr-anime/values.yaml @@ -59,6 +59,39 @@ radarr-anime: port: 9793 targetPort: 9793 protocol: TCP + serviceMonitor: + main: + selector: + matchLabels: + app.kubernetes.io/name: radarr-anime + app.kubernetes.io/instance: radarr-anime + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 3m + scrapeTimeout: 1m + path: /metrics + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - radarr-anime.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: radarr-anime + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: config: forceRename: radarr-anime-config @@ -84,64 +117,50 @@ radarr-anime: postgres-18-cluster: mode: recovery cluster: - storage: - storageClass: local-path - walStorage: - storageClass: local-path initdb: - database: app - owner: app postInitSQL: - CREATE DATABASE IF NOT EXISTS "radarr-main" OWNER "app"; - CREATE DATABASE IF NOT EXISTS "radarr-log" OWNER "app"; recovery: method: objectStore objectStore: - destinationPath: s3://postgres-backups/cl01tl/radarr-anime/radarr-anime-postgresql-18-cluster - endpointURL: http://garage-main.garage:3900 index: 1 - endpointCredentials: radarr-anime-postgresql-18-cluster-backup-secret-garage backup: objectStore: - name: garage-local - destinationPath: s3://postgres-backups/cl01tl/radarr-anime/radarr-anime-postgresql-18-cluster index: 1 - endpointURL: http://garage-main.garage:3900 - endpointCredentials: radarr-anime-postgresql-18-cluster-backup-secret-garage - endpointCredentialsIncludeRegion: true - retentionPolicy: "3d" + destinationBucket: postgres-backups + externalSecretCredentialPath: /garage/home-infra/postgres-backups isWALArchiver: true - # - name: external - # destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/radarr-anime/radarr-anime-postgresql-18-cluster - # index: 1 - # endpointCredentials: radarr-anime-postgresql-18-cluster-backup-secret - # retentionPolicy: "30d" - # isWALArchiver: false # - name: garage-remote - # destinationPath: s3://postgres-backups/cl01tl/radarr-anime/radarr-anime-postgresql-18-cluster # index: 1 - # endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900 - # endpointCredentials: radarr-anime-postgresql-18-cluster-backup-secret-garage - # retentionPolicy: "30d" + # destinationBucket: postgres-backups + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # retentionPolicy: "90d" # data: # compression: bzip2 - # jobs: 2 + # - name: external + # index: 1 + # endpointURL: https://nyc3.digitaloceanspaces.com + # destinationBucket: postgres-backups-ce540ddf106d186bbddca68a + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # isWALArchiver: false scheduledBackups: - name: live-backup suspend: false immediate: true schedule: "0 0 0 * * *" backupName: garage-local - # - name: daily-backup - # suspend: false - # immediate: true - # schedule: "0 0 0 * * *" - # backupName: external # - name: weekly-backup # suspend: true # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote + # - name: daily-backup + # suspend: true + # immediate: true + # schedule: "0 0 0 * * *" + # backupName: external volsync-target-config: pvcTarget: radarr-anime-config moverSecurityContext: diff --git a/clusters/cl01tl/helm/radarr-standup/Chart.lock b/clusters/cl01tl/helm/radarr-standup/Chart.lock index 48873dbab..d187f788d 100644 --- a/clusters/cl01tl/helm/radarr-standup/Chart.lock +++ b/clusters/cl01tl/helm/radarr-standup/Chart.lock @@ -4,9 +4,9 @@ dependencies: version: 4.5.0 - name: postgres-cluster repository: oci://harbor.alexlebens.net/helm-charts - version: 7.1.4 + version: 7.4.3 - name: volsync-target repository: oci://harbor.alexlebens.net/helm-charts version: 0.6.0 -digest: sha256:64cc2de630bf5fc86c595acd83e8b9e040e740351cf5a7a479d3335534f2bff7 -generated: "2025-12-21T19:06:09.914421529Z" +digest: sha256:348545782b826d70552bdfe3ce3a99e31884aa52bd853bd565713bc6c151208e +generated: "2025-12-23T23:24:54.644016-06:00" diff --git a/clusters/cl01tl/helm/radarr-standup/Chart.yaml b/clusters/cl01tl/helm/radarr-standup/Chart.yaml index 9ebb8f5ac..7f53672f2 100644 --- a/clusters/cl01tl/helm/radarr-standup/Chart.yaml +++ b/clusters/cl01tl/helm/radarr-standup/Chart.yaml @@ -26,11 +26,12 @@ dependencies: version: 4.5.0 - name: postgres-cluster alias: postgres-18-cluster - version: 7.1.4 + version: 7.4.3 repository: oci://harbor.alexlebens.net/helm-charts - name: volsync-target alias: volsync-target-config version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/radarr.png +# renovate: github=linuxserver/radarr appVersion: 6.0.4 diff --git a/clusters/cl01tl/helm/radarr-standup/templates/external-secret.yaml b/clusters/cl01tl/helm/radarr-standup/templates/external-secret.yaml deleted file mode 100644 index 0f7bd61a9..000000000 --- a/clusters/cl01tl/helm/radarr-standup/templates/external-secret.yaml +++ /dev/null @@ -1,65 +0,0 @@ -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-standup-postgresql-18-cluster-backup-secret - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-standup-postgresql-18-cluster-backup-secret - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: access - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: secret - ---- -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-standup-postgresql-18-cluster-backup-secret-garage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-standup-postgresql-18-cluster-backup-secret-garage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_KEY_ID - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_SECRET_KEY - - secretKey: ACCESS_REGION - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_REGION diff --git a/clusters/cl01tl/helm/radarr-standup/templates/http-route.yaml b/clusters/cl01tl/helm/radarr-standup/templates/http-route.yaml deleted file mode 100644 index 8d2a3c822..000000000 --- a/clusters/cl01tl/helm/radarr-standup/templates/http-route.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-radarr-standup - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-radarr-standup - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - radarr-standup.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: radarr-standup - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/radarr-standup/templates/service-monitor.yaml b/clusters/cl01tl/helm/radarr-standup/templates/service-monitor.yaml deleted file mode 100644 index 71c74be7e..000000000 --- a/clusters/cl01tl/helm/radarr-standup/templates/service-monitor.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: radarr-standup - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-standup - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - selector: - matchLabels: - app.kubernetes.io/name: radarr-standup - app.kubernetes.io/instance: {{ .Release.Name }} - endpoints: - - port: metrics - interval: 3m - scrapeTimeout: 1m - path: /metrics diff --git a/clusters/cl01tl/helm/radarr-standup/values.yaml b/clusters/cl01tl/helm/radarr-standup/values.yaml index 38acdfda3..35b9b8885 100644 --- a/clusters/cl01tl/helm/radarr-standup/values.yaml +++ b/clusters/cl01tl/helm/radarr-standup/values.yaml @@ -59,6 +59,39 @@ radarr-standup: port: 9793 targetPort: 9793 protocol: TCP + serviceMonitor: + main: + selector: + matchLabels: + app.kubernetes.io/name: radarr-standup + app.kubernetes.io/instance: radarr-standup + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 3m + scrapeTimeout: 1m + path: /metrics + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - radarr-standup.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: radarr-standup + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: config: forceRename: radarr-standup-config @@ -84,64 +117,50 @@ radarr-standup: postgres-18-cluster: mode: recovery cluster: - storage: - storageClass: local-path - walStorage: - storageClass: local-path initdb: - database: app - owner: app postInitSQL: - CREATE DATABASE IF NOT EXISTS "radarr-main" OWNER "app"; - CREATE DATABASE IF NOT EXISTS "radarr-log" OWNER "app"; recovery: method: objectStore objectStore: - destinationPath: s3://postgres-backups/cl01tl/radarr-standup/radarr-standup-postgresql-18-cluster - endpointURL: http://garage-main.garage:3900 index: 1 - endpointCredentials: radarr-standup-postgresql-18-cluster-backup-secret-garage backup: objectStore: - name: garage-local - destinationPath: s3://postgres-backups/cl01tl/radarr-standup/radarr-standup-postgresql-18-cluster index: 1 - endpointURL: http://garage-main.garage:3900 - endpointCredentials: radarr-standup-postgresql-18-cluster-backup-secret-garage - endpointCredentialsIncludeRegion: true - retentionPolicy: "3d" + destinationBucket: postgres-backups + externalSecretCredentialPath: /garage/home-infra/postgres-backups isWALArchiver: true - # - name: external - # destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/radarr-standup/radarr-standup-postgresql-18-cluster - # index: 1 - # endpointCredentials: radarr-standup-postgresql-18-cluster-backup-secret - # retentionPolicy: "30d" - # isWALArchiver: false # - name: garage-remote - # destinationPath: s3://postgres-backups/cl01tl/radarr-standup/radarr-standup-postgresql-18-cluster # index: 1 - # endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900 - # endpointCredentials: radarr-standup-postgresql-18-cluster-backup-secret-garage - # retentionPolicy: "30d" + # destinationBucket: postgres-backups + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # retentionPolicy: "90d" # data: # compression: bzip2 - # jobs: 2 + # - name: external + # index: 1 + # endpointURL: https://nyc3.digitaloceanspaces.com + # destinationBucket: postgres-backups-ce540ddf106d186bbddca68a + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # isWALArchiver: false scheduledBackups: - name: live-backup suspend: false immediate: true schedule: "0 0 0 * * *" backupName: garage-local - # - name: daily-backup - # suspend: false - # immediate: true - # schedule: "0 0 0 * * *" - # backupName: external # - name: weekly-backup # suspend: true # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote + # - name: daily-backup + # suspend: true + # immediate: true + # schedule: "0 0 0 * * *" + # backupName: external volsync-target-config: pvcTarget: radarr-standup-config moverSecurityContext: diff --git a/clusters/cl01tl/helm/radarr/Chart.lock b/clusters/cl01tl/helm/radarr/Chart.lock index 2ac048497..00e74c0f1 100644 --- a/clusters/cl01tl/helm/radarr/Chart.lock +++ b/clusters/cl01tl/helm/radarr/Chart.lock @@ -4,9 +4,9 @@ dependencies: version: 4.5.0 - name: postgres-cluster repository: oci://harbor.alexlebens.net/helm-charts - version: 7.1.4 + version: 7.4.3 - name: volsync-target repository: oci://harbor.alexlebens.net/helm-charts version: 0.6.0 -digest: sha256:c917e448a3ef6c16868c16e9d8a19648ff60524e99670018fc8492fbc3ebba42 -generated: "2025-12-21T19:06:25.764698868Z" +digest: sha256:021ce2d1194b098abcf38032a2e4e248c44cd7a1255a808789f98118cb150786 +generated: "2025-12-23T23:21:09.299168-06:00" diff --git a/clusters/cl01tl/helm/radarr/Chart.yaml b/clusters/cl01tl/helm/radarr/Chart.yaml index 9a699aaf7..524cd112e 100644 --- a/clusters/cl01tl/helm/radarr/Chart.yaml +++ b/clusters/cl01tl/helm/radarr/Chart.yaml @@ -26,11 +26,12 @@ dependencies: version: 4.5.0 - name: postgres-cluster alias: postgres-18-cluster - version: 7.1.4 + version: 7.4.3 repository: oci://harbor.alexlebens.net/helm-charts - name: volsync-target alias: volsync-target-config version: 0.6.0 repository: oci://harbor.alexlebens.net/helm-charts icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/radarr.png +# renovate: github=linuxserver/radarr appVersion: 6.0.4 diff --git a/clusters/cl01tl/helm/radarr/templates/external-secret.yaml b/clusters/cl01tl/helm/radarr/templates/external-secret.yaml deleted file mode 100644 index d48df393e..000000000 --- a/clusters/cl01tl/helm/radarr/templates/external-secret.yaml +++ /dev/null @@ -1,65 +0,0 @@ -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-postgresql-18-cluster-backup-secret - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-postgresql-18-cluster-backup-secret - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: access - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /digital-ocean/home-infra/postgres-backups - metadataPolicy: None - property: secret - ---- -apiVersion: external-secrets.io/v1 -kind: ExternalSecret -metadata: - name: radarr-postgresql-18-cluster-backup-secret-garage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr-postgresql-18-cluster-backup-secret-garage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - secretStoreRef: - kind: ClusterSecretStore - name: vault - data: - - secretKey: ACCESS_KEY_ID - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_KEY_ID - - secretKey: ACCESS_SECRET_KEY - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_SECRET_KEY - - secretKey: ACCESS_REGION - remoteRef: - conversionStrategy: Default - decodingStrategy: None - key: /garage/home-infra/postgres-backups - metadataPolicy: None - property: ACCESS_REGION diff --git a/clusters/cl01tl/helm/radarr/templates/http-route.yaml b/clusters/cl01tl/helm/radarr/templates/http-route.yaml deleted file mode 100644 index 0dae2e263..000000000 --- a/clusters/cl01tl/helm/radarr/templates/http-route.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: gateway.networking.k8s.io/v1 -kind: HTTPRoute -metadata: - name: http-route-radarr - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: http-route-radarr - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - parentRefs: - - group: gateway.networking.k8s.io - kind: Gateway - name: traefik-gateway - namespace: traefik - hostnames: - - radarr.alexlebens.net - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - group: '' - kind: Service - name: radarr - port: 80 - weight: 100 diff --git a/clusters/cl01tl/helm/radarr/templates/service-monitor.yaml b/clusters/cl01tl/helm/radarr/templates/service-monitor.yaml deleted file mode 100644 index 4a5d7eb09..000000000 --- a/clusters/cl01tl/helm/radarr/templates/service-monitor.yaml +++ /dev/null @@ -1,19 +0,0 @@ -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: radarr - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: radarr - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - selector: - matchLabels: - app.kubernetes.io/name: radarr - app.kubernetes.io/instance: {{ .Release.Name }} - endpoints: - - port: metrics - interval: 3m - scrapeTimeout: 1m - path: /metrics diff --git a/clusters/cl01tl/helm/radarr/values.yaml b/clusters/cl01tl/helm/radarr/values.yaml index c1cc83e95..684122b2c 100644 --- a/clusters/cl01tl/helm/radarr/values.yaml +++ b/clusters/cl01tl/helm/radarr/values.yaml @@ -61,6 +61,39 @@ radarr: port: 9793 targetPort: 9793 protocol: TCP + serviceMonitor: + main: + selector: + matchLabels: + app.kubernetes.io/name: radarr + app.kubernetes.io/instance: radarr + serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' + endpoints: + - port: metrics + interval: 3m + scrapeTimeout: 1m + path: /metrics + route: + main: + kind: HTTPRoute + parentRefs: + - group: gateway.networking.k8s.io + kind: Gateway + name: traefik-gateway + namespace: traefik + hostnames: + - radarr.alexlebens.net + rules: + - backendRefs: + - group: '' + kind: Service + name: radarr + port: 80 + weight: 100 + matches: + - path: + type: PathPrefix + value: / persistence: config: forceRename: radarr-config @@ -86,64 +119,50 @@ radarr: postgres-18-cluster: mode: recovery cluster: - storage: - storageClass: local-path - walStorage: - storageClass: local-path initdb: - database: app - owner: app postInitSQL: - CREATE DATABASE IF NOT EXISTS "radarr-main" OWNER "app"; - CREATE DATABASE IF NOT EXISTS "radarr-log" OWNER "app"; recovery: method: objectStore objectStore: - destinationPath: s3://postgres-backups/cl01tl/radarr/radarr-postgresql-18-cluster - endpointURL: http://garage-main.garage:3900 index: 1 - endpointCredentials: radarr-postgresql-18-cluster-backup-secret-garage backup: objectStore: - name: garage-local - destinationPath: s3://postgres-backups/cl01tl/radarr/radarr-postgresql-18-cluster index: 1 - endpointURL: http://garage-main.garage:3900 - endpointCredentials: radarr-postgresql-18-cluster-backup-secret-garage - endpointCredentialsIncludeRegion: true - retentionPolicy: "3d" + destinationBucket: postgres-backups + externalSecretCredentialPath: /garage/home-infra/postgres-backups isWALArchiver: true - # - name: external - # destinationPath: s3://postgres-backups-ce540ddf106d186bbddca68a/cl01tl/radarr/radarr-postgresql-18-cluster - # index: 1 - # endpointCredentials: radarr-postgresql-18-cluster-backup-secret - # retentionPolicy: "30d" - # isWALArchiver: false # - name: garage-remote - # destinationPath: s3://postgres-backups/cl01tl/radarr/radarr-postgresql-18-cluster # index: 1 - # endpointURL: https://garage-ps10rp.boreal-beaufort.ts.net:3900 - # endpointCredentials: radarr-postgresql-18-cluster-backup-secret-garage - # retentionPolicy: "30d" + # destinationBucket: postgres-backups + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # retentionPolicy: "90d" # data: # compression: bzip2 - # jobs: 2 + # - name: external + # index: 1 + # endpointURL: https://nyc3.digitaloceanspaces.com + # destinationBucket: postgres-backups-ce540ddf106d186bbddca68a + # externalSecretCredentialPath: /garage/home-infra/postgres-backups + # isWALArchiver: false scheduledBackups: - name: live-backup suspend: false immediate: true schedule: "0 0 0 * * *" backupName: garage-local - # - name: daily-backup - # suspend: false - # immediate: true - # schedule: "0 0 0 * * *" - # backupName: external # - name: weekly-backup # suspend: true # immediate: true # schedule: "0 0 4 * * SAT" # backupName: garage-remote + # - name: daily-backup + # suspend: true + # immediate: true + # schedule: "0 0 0 * * *" + # backupName: external volsync-target-config: pvcTarget: radarr-config moverSecurityContext: