diff --git a/charts/apps/home-assistant/templates/deployment.yaml b/charts/apps/home-assistant/templates/deployment.yaml index b0933c2..682edcf 100644 --- a/charts/apps/home-assistant/templates/deployment.yaml +++ b/charts/apps/home-assistant/templates/deployment.yaml @@ -15,6 +15,7 @@ spec: app: "{{ .Release.Name }}" spec: hostNetwork: true + dnsPolicy: ClusterFirstWithHostNet containers: - name: "{{ .Release.Name }}" diff --git a/charts/apps/home-assistant/templates/piper.yaml b/charts/apps/home-assistant/templates/piper.yaml new file mode 100644 index 0000000..18cd69a --- /dev/null +++ b/charts/apps/home-assistant/templates/piper.yaml @@ -0,0 +1,59 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "{{ .Release.Name }}-piper" +spec: + strategy: + type: Recreate + replicas: 1 + selector: + matchLabels: + app: "{{ .Release.Name }}-piper" + template: + metadata: + labels: + app: "{{ .Release.Name }}-piper" + spec: + hostNetwork: true + + containers: + - name: "{{ .Release.Name }}-piper" + image: "{{ .Values.piper.image.repository }}:{{ .Values.piper.image.tag }}" + imagePullPolicy: "{{ .Values.piper.image.pullPolicy }}" + args: + - --piper + - /usr/share/piper/piper + - --data-dir + - /usr/share/piper-voices + - --voice + - "{{ .Values.piper.model }}" + env: + - name: TZ + value: "{{ .Values.globals.timezone }}" + ports: + - name: http + containerPort: 10200 + protocol: TCP + livenessProbe: + tcpSocket: + port: http + readinessProbe: + tcpSocket: + port: http + +--- +apiVersion: v1 +kind: Service +metadata: + name: "{{ .Release.Name }}-piper" + labels: + app: "{{ .Release.Name }}-piper" +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: 10200 + protocol: TCP + name: http + selector: + app: "{{ .Release.Name }}-piper" diff --git a/charts/apps/home-assistant/templates/whisper.yaml b/charts/apps/home-assistant/templates/whisper.yaml new file mode 100644 index 0000000..4f394e8 --- /dev/null +++ b/charts/apps/home-assistant/templates/whisper.yaml @@ -0,0 +1,57 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: "{{ .Release.Name }}-whisper" +spec: + strategy: + type: Recreate + replicas: 1 + selector: + matchLabels: + app: "{{ .Release.Name }}-whisper" + template: + metadata: + labels: + app: "{{ .Release.Name }}-whisper" + spec: + hostNetwork: true + + containers: + - name: "{{ .Release.Name }}-whisper" + image: "{{ .Values.whisper.image.repository }}:{{ .Values.whisper.image.tag }}" + imagePullPolicy: "{{ .Values.whisper.image.pullPolicy }}" + args: + - --model + - "{{ .Values.whisper.model }}" + - --language + - "{{ .Values.whisper.language }}" + env: + - name: TZ + value: "{{ .Values.globals.timezone }}" + ports: + - name: http + containerPort: 10300 + protocol: TCP + livenessProbe: + tcpSocket: + port: http + readinessProbe: + tcpSocket: + port: http + +--- +apiVersion: v1 +kind: Service +metadata: + name: "{{ .Release.Name }}-whisper" + labels: + app: "{{ .Release.Name }}-whisper" +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: 10300 + protocol: TCP + name: http + selector: + app: "{{ .Release.Name }}-whisper" diff --git a/charts/apps/home-assistant/values.yaml b/charts/apps/home-assistant/values.yaml index e7fcbbf..2ca0bd4 100644 --- a/charts/apps/home-assistant/values.yaml +++ b/charts/apps/home-assistant/values.yaml @@ -6,3 +6,16 @@ image: tag: stable pullPolicy: IfNotPresent subdomain: home-assistant +piper: + image: + repository: ghcr.io/morten-olsen/glados-voice + tag: main + pullPolicy: Always + model: en_US-glados-medium +whisper: + image: + repository: rhasspy/wyoming-whisper + tag: latest + pullPolicy: IfNotPresent + model: tiny-int8 + language: us