feat: overhaul mount
Some checks failed
lint-test-helm / lint-helm (push) Has started running
render-manifests-push / render-manifests-push (push) Has been cancelled
renovate / renovate (push) Has been cancelled

This commit is contained in:
2026-03-12 22:56:53 -05:00
parent 30b681a559
commit 614d68c3da
6 changed files with 88 additions and 77 deletions

View File

@@ -27,6 +27,14 @@ dependencies:
alias: volsync-target-metadata alias: volsync-target-metadata
version: 0.8.0 version: 0.8.0
repository: oci://harbor.alexlebens.net/helm-charts repository: oci://harbor.alexlebens.net/helm-charts
- name: volsync-target
alias: volsync-target-books
version: 0.8.0
repository: oci://harbor.alexlebens.net/helm-charts
- name: volsync-target
alias: volsync-target-audiobooks
version: 0.8.0
repository: oci://harbor.alexlebens.net/helm-charts
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/audiobookshelf.png icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/audiobookshelf.png
# renovate: datasource=github-releases depName=advplyr/audiobookshelf # renovate: datasource=github-releases depName=advplyr/audiobookshelf
appVersion: 2.32.1 appVersion: 2.32.1

View File

@@ -1,14 +1,33 @@
apiVersion: v1 apiVersion: v1
kind: PersistentVolumeClaim kind: PersistentVolumeClaim
metadata: metadata:
name: audiobookshelf-nfs-storage name: audiobookshelf-books-nfs-storage
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: audiobookshelf-nfs-storage app.kubernetes.io/name: audiobookshelf-books-nfs-storage
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
volumeName: audiobookshelf-nfs-storage volumeName: audiobookshelf-books-nfs-storage
storageClassName: nfs-client
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: audiobookshelf-audiobooks-nfs-storage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: audiobookshelf-audiobooks-nfs-storage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
volumeName: audiobookshelf-audiobooks-nfs-storage
storageClassName: nfs-client storageClassName: nfs-client
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany

View File

@@ -1,10 +1,10 @@
apiVersion: v1 apiVersion: v1
kind: PersistentVolume kind: PersistentVolume
metadata: metadata:
name: audiobookshelf-nfs-storage name: audiobookshelf-books-nfs-storage
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
labels: labels:
app.kubernetes.io/name: audiobookshelf-nfs-storage app.kubernetes.io/name: audiobookshelf-books-nfs-storage
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
spec: spec:
@@ -15,7 +15,32 @@ spec:
accessModes: accessModes:
- ReadWriteMany - ReadWriteMany
nfs: nfs:
path: /volume2/Storage path: /volume2/Storage/Books
server: synologybond.alexlebens.net
mountOptions:
- vers=4
- minorversion=1
- noac
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: audiobookshelf-audiobooks-nfs-storage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: audiobookshelf-audiobooks-nfs-storage
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
persistentVolumeReclaimPolicy: Retain
storageClassName: nfs-client
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
nfs:
path: /volume2/Storage/Audiobooks
server: synologybond.alexlebens.net server: synologybond.alexlebens.net
mountOptions: mountOptions:
- vers=4 - vers=4

View File

@@ -114,41 +114,26 @@ audiobookshelf:
main: main:
- path: /metadata - path: /metadata
readOnly: false readOnly: false
audiobooks-data: books:
forceRename: audiobookshelf-audiobooks existingClaim: audiobookshelf-books-nfs-storage
storageClass: ceph-block
accessMode: ReadWriteOnce
size: 40Gi
retain: true
advancedMounts: advancedMounts:
main: main:
main: main:
- path: /mnt/Audiobooks - path: /mnt/store/Books
readOnly: false readOnly: false
books-data: audiobooks:
forceRename: audiobookshelf-books existingClaim: audiobookshelf-audiobooks-nfs-storage
storageClass: ceph-block
accessMode: ReadWriteOnce
size: 10Gi
retain: true
advancedMounts: advancedMounts:
main: main:
main: main:
- path: /mnt/Books - path: /mnt/store/Audiobooks
readOnly: false readOnly: false
podcasts-data: podcasts:
existingClaim: audiobookshelf-podcasts-nfs-storage existingClaim: audiobookshelf-podcasts-nfs-storage
advancedMounts: advancedMounts:
main: main:
main: main:
- path: /mnt/Podcasts - path: /mnt/store/Podcasts
readOnly: false
audiobooks:
existingClaim: audiobookshelf-nfs-storage
advancedMounts:
main:
main:
- path: /mnt/store/
readOnly: false readOnly: false
volsync-target-config: volsync-target-config:
pvcTarget: audiobookshelf-config pvcTarget: audiobookshelf-config
@@ -172,31 +157,37 @@ volsync-target-metadata:
external: external:
enabled: true enabled: true
schedule: 4 10 * * * schedule: 4 10 * * *
volsync-target-books:
pvcTarget: audiobookshelf-books
local:
enabled: true
schedule: 14 8 * * *
restic:
copyMethod: Direct
remote:
enabled: false
schedule: 14 9 * * *
restic:
copyMethod: Direct
external:
enabled: false
schedule: 14 10 * * *
restic:
copyMethod: Direct
volsync-target-audiobooks: volsync-target-audiobooks:
pvcTarget: audiobookshelf-audiobooks pvcTarget: audiobookshelf-audiobooks
local: local:
enabled: true enabled: true
schedule: 14 8 * * * schedule: 14 8 * * *
restic: restic:
cacheCapacity: 10Gi copyMethod: Direct
remote: remote:
enabled: true enabled: false
schedule: 14 9 * * * schedule: 14 9 * * *
restic: restic:
cacheCapacity: 10Gi copyMethod: Direct
external: external:
enabled: true enabled: false
schedule: 14 10 * * * schedule: 14 10 * * *
restic: restic:
cacheCapacity: 10Gi copyMethod: Direct
volsync-target-books:
pvcTarget: audiobookshelf-books
local:
enabled: true
schedule: 14 8 * * *
remote:
enabled: true
schedule: 14 9 * * *
external:
enabled: true
schedule: 14 10 * * *

View File

@@ -1,15 +0,0 @@
apiVersion: volsync.backube/v1alpha1
kind: ReplicationDestination
metadata:
name: booklore-data-replication-destination
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: booklore-data-replication-destination
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
rsyncTLS:
copyMethod: Direct
accessModes: ["ReadWriteMany"]
destinationPVC: booklore-books-nfs-storage
keySecret: booklore-data-replication-secret

View File

@@ -1,17 +0,0 @@
apiVersion: volsync.backube/v1alpha1
kind: ReplicationSource
metadata:
name: booklore-data-replication-source
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: booklore-data-replication-source
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
sourcePVC: booklore-data
trigger:
schedule: "0 0 * * *"
rsyncTLS:
keySecret: booklore-data-replication-secret
address: volsync-rsync-tls-dst-booklore-data-replication-destination
copyMethod: Snapshot