Switch adguardhome/esphome/signal-gateway/zigbee2mqtt to PVC storage

Replaces raw hostPath (/srv/data/<app>) with a local-path PVC per app,
so these apps get proper PVC lifecycle semantics and can have a PVC
backup CronJob (matching what gitea already has) instead of being
unbacked host directories. local-path already lives on the same disk
these hostPaths did, so this isn't a storage-tier change.

adguardhome specifically: consolidates the previous split work/+conf/
hostPath mounts into a single PVC mounted at /opt/adguardhome (its own
default convention), since a real deployment can't run two hostPath
subtrees off one PVC.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01566weDFku8TaRC2CJUPVM1
This commit is contained in:
sha
2026-08-24 02:44:30 +03:00
co-authored by Claude Sonnet 5
parent d22a3a62cf
commit cc5ecd25ce
16 changed files with 115 additions and 36 deletions
+1 -1
View File
@@ -2,7 +2,7 @@ apiVersion: v2
name: signal-gateway
description: Signal Gateway Helm chart
type: application
version: 0.1.2
version: 0.1.3
appVersion: "0.100"
annotations:
version-source: github-release:bbernhard/signal-cli-rest-api
+2 -3
View File
@@ -39,6 +39,5 @@ spec:
mountPath: /home/.local/share/signal-cli
volumes:
- name: config
hostPath:
path: {{ .Values.volume.hostPath }}
type: DirectoryOrCreate
persistentVolumeClaim:
claimName: {{ .Values.persistence.existingClaim | default (printf "%s-data" .Release.Name) }}
+18
View File
@@ -0,0 +1,18 @@
{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ .Release.Name }}-data
labels:
app.kubernetes.io/name: {{ .Chart.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
accessModes:
{{- toYaml .Values.persistence.accessModes | nindent 4 }}
{{- with .Values.persistence.storageClass }}
storageClassName: {{ . }}
{{- end }}
resources:
requests:
storage: {{ .Values.persistence.size }}
{{- end }}
+7 -2
View File
@@ -19,8 +19,13 @@ resources:
cpu: "1"
memory: "512Mi"
volume:
hostPath: ""
persistence:
enabled: true
existingClaim: ""
storageClass: local-path
accessModes:
- ReadWriteOnce
size: 1Gi
ingresses: {}
# https: