diff --git a/kubernetes/apps/default/media-browser/app/helmrelease.yaml b/kubernetes/apps/default/media-browser/app/helmrelease.yaml index a536a6a54..8c31564fc 100644 --- a/kubernetes/apps/default/media-browser/app/helmrelease.yaml +++ b/kubernetes/apps/default/media-browser/app/helmrelease.yaml @@ -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,42 +27,60 @@ spec: uninstall: keepHistory: false values: - controller: - annotations: - reloader.stakater.com/auto: "true" - image: - repository: docker.io/filebrowser/filebrowser - tag: v2.25.0 - env: - TZ: "${TIMEZONE}" - FB_DATABASE: "/config/filebrowser.db" - FB_ROOT: "/mnt/storage" - FB_LOG: "stdout" - FB_NOAUTH: "true" + controllers: + main: + type: statefulset + annotations: + reloader.stakater.com/auto: "true" + containers: + main: + image: + repository: docker.io/filebrowser/filebrowser + tag: v2.25.0 + env: + TZ: "${TIMEZONE}" + FB_DATABASE: "/config/filebrowser.db" + FB_ROOT: "/mnt/storage" + FB_LOG: "stdout" + FB_NOAUTH: "true" + probes: + liveness: &probes + enabled: true + custom: true + spec: + httpGet: + path: /health + port: &port 80 + initialDelaySeconds: 0 + periodSeconds: 10 + timeoutSeconds: 1 + failureThreshold: 3 + readiness: *probes + startup: + enabled: false + resources: + requests: + cpu: 10m + memory: 50Mi + limits: + memory: 500Mi + statefulset: + volumeClaimTemplates: + - name: config + accessMode: ReadWriteOnce + size: 1Gi + storageClass: rook-ceph-block + globalMounts: + - path: /config service: main: ports: http: - port: &port 80 - probes: - liveness: &probes - enabled: true - custom: true - spec: - httpGet: - path: /health port: *port - initialDelaySeconds: 0 - periodSeconds: 10 - timeoutSeconds: 1 - failureThreshold: 3 - readiness: *probes - startup: - enabled: false ingress: main: enabled: true - ingressClassName: "nginx" + className: "nginx" annotations: auth.home.arpa/enabled: "true" hajimari.io/icon: mdi:folder-play-outline @@ -70,35 +88,31 @@ spec: - host: &host "{{ .Release.Name }}.${SECRET_CLUSTER_DOMAIN}" paths: - path: / - pathType: Prefix + service: + name: main + port: http tls: - hosts: - *host persistence: - config: - enabled: true - existingClaim: media-browser-config music: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/music - mountPath: /mnt/storage/music + globalMounts: + - path: /mnt/storage/music photo: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/photo - mountPath: /mnt/storage/photo + globalMounts: + - path: /mnt/storage/photo video: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/video - mountPath: /mnt/storage/video - resources: - requests: - cpu: 10m - memory: 50Mi - limits: - memory: 500Mi + globalMounts: + - path: /mnt/storage/video diff --git a/kubernetes/apps/default/media-browser/app/kustomization.yaml b/kubernetes/apps/default/media-browser/app/kustomization.yaml index 7cc2de98b..29079162f 100644 --- a/kubernetes/apps/default/media-browser/app/kustomization.yaml +++ b/kubernetes/apps/default/media-browser/app/kustomization.yaml @@ -7,4 +7,3 @@ resources: - ./gatus.yaml - ./helmrelease.yaml - ./volsync.yaml - - ./volume.yaml diff --git a/kubernetes/apps/default/media-browser/app/volsync.yaml b/kubernetes/apps/default/media-browser/app/volsync.yaml index a38c82967..2059fd9fa 100644 --- a/kubernetes/apps/default/media-browser/app/volsync.yaml +++ b/kubernetes/apps/default/media-browser/app/volsync.yaml @@ -3,19 +3,19 @@ apiVersion: external-secrets.io/v1beta1 kind: ExternalSecret metadata: - name: lychee-restic + name: media-browser-restic namespace: default spec: secretStoreRef: kind: ClusterSecretStore name: onepassword-connect target: - name: lychee-restic-secret + name: media-browser-restic-secret creationPolicy: Owner template: engineVersion: v2 data: - RESTIC_REPOSITORY: '{{ .REPOSITORY_TEMPLATE }}/lychee' + RESTIC_REPOSITORY: '{{ .REPOSITORY_TEMPLATE }}/media-browser' RESTIC_PASSWORD: '{{ .RESTIC_PASSWORD }}' AWS_ACCESS_KEY_ID: '{{ .AWS_ACCESS_KEY_ID }}' AWS_SECRET_ACCESS_KEY: '{{ .AWS_SECRET_ACCESS_KEY }}' @@ -27,16 +27,16 @@ spec: apiVersion: volsync.backube/v1alpha1 kind: ReplicationSource metadata: - name: lychee + name: media-browser namespace: default spec: - sourcePVC: lychee-files + sourcePVC: config-media-browser-0 trigger: schedule: "0 7 * * *" restic: copyMethod: Snapshot pruneIntervalDays: 7 - repository: lychee-restic-secret + repository: media-browser-restic-secret cacheCapacity: 20Gi volumeSnapshotClassName: csi-ceph-blockpool storageClassName: rook-ceph-block diff --git a/kubernetes/apps/default/media-browser/app/volume.yaml b/kubernetes/apps/default/media-browser/app/volume.yaml deleted file mode 100644 index bb2185241..000000000 --- a/kubernetes/apps/default/media-browser/app/volume.yaml +++ /dev/null @@ -1,17 +0,0 @@ ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: media-browser-config - namespace: default - labels: - app.kubernetes.io/name: &name media-browser - app.kubernetes.io/instance: *name - snapshot.home.arpa/enabled: "true" -spec: - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 20Gi - storageClassName: rook-ceph-block