Sunnypup-Helm/templates/homeassistant.yaml
Ava Affine c95822bca2 homeassistant container deployment
Signed-off-by: Ava Affine <ava@sunnypup.io>
2025-08-06 17:05:39 +00:00

160 lines
3.1 KiB
YAML

apiVersion: v1
kind: Service
metadata:
name: homeassistant
labels:
app: homeassistant
spec:
selector:
app: homeassistant
type: ClusterIP
clusterIP: None
ports:
- name: http-port
port: 8123
targetPort: 8123
---
apiVersion: v1
kind: Service
metadata:
name: matter
labels:
app: matter
spec:
selector:
app: matter
type: ClusterIP
clusterIP: None
ports:
- name: api-port
port: 5580
targetPort: 5580
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: homeassistant
spec:
replicas: 1
selector:
matchLabels:
app: homeassistant
template:
metadata:
labels:
app: homeassistant
spec:
containers:
- name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
securityContext:
privileged: true
ports:
- name: http-port
containerPort: 8123
env:
- name: TZ
value: "America/Los_Angeles"
volumeMounts:
- name: config-directory
mountPath: /config
- name: zigbee-dongle
mountPath: /dev/ttyUSB0
volumes:
- name: config-directory
persistentVolumeClaim:
claimName: homeassistant-pvc
- name: zigbee-dongle
hostPath:
path: /dev/ttyUSB0
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: matter
spec:
replicas: 1
selector:
matchLabels:
app: matter
template:
metadata:
labels:
app: matter
spec:
containers:
- name: matter
image: "ghcr.io/home-assistant-libs/python-matter-server:stable"
ports:
- name: api-port
containerPort: 5580
volumeMounts:
- name: data-directory
mountPath: /data
- name: host-dbus
mountPath: /run/dbus
volumes:
- name: data-directory
persistentVolumeClaim:
claimName: matter-pvc
- name: host-dbus
hostPath:
path: /run/dbus
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: homeassistant-pv
labels:
pvc_type: homeassistant-pv
spec:
capacity:
storage: 1000Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
hostPath:
path: {{ .Values.homeassistant.path }}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: homeassistant-pvc
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
storageClassName: ""
volumeName: homeassistant-pv
resources:
requests:
storage: 1000Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: matter-pv
labels:
pvc_type: matter-pv
spec:
capacity:
storage: 1000Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
hostPath:
path: {{ .Values.homeassistant.matter.path }}
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: matter-pvc
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
storageClassName: ""
volumeName: matter-pv
resources:
requests:
storage: 1000Gi