diff --git a/home-assistant/faster-whisper/values.yaml b/home-assistant/faster-whisper/values.yaml index 12430582..caa28b0f 100644 --- a/home-assistant/faster-whisper/values.yaml +++ b/home-assistant/faster-whisper/values.yaml @@ -15,7 +15,7 @@ controllers: repository: quay.io/linuxserver.io/faster-whisper pullPolicy: IfNotPresent tag: 2.0.0-gpu - + env: - name: NVIDIA_DRIVER_CAPABILITIES value: compute,utility diff --git a/home-assistant/kustomization.yaml b/home-assistant/kustomization.yaml index 142a0293..b8301ed7 100644 --- a/home-assistant/kustomization.yaml +++ b/home-assistant/kustomization.yaml @@ -11,3 +11,4 @@ resources: - ./home-assistant/ - ./node-red/ - ./faster-whisper/ + - ./piper/ diff --git a/home-assistant/piper/kustomization.yaml b/home-assistant/piper/kustomization.yaml new file mode 100644 index 00000000..33f721e1 --- /dev/null +++ b/home-assistant/piper/kustomization.yaml @@ -0,0 +1,12 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./templates/repository.yaml + - ./templates/release.yaml +configMapGenerator: + - name: home-assistant-piper-values + files: + - values.yaml=values.yaml +configurations: + - kustomizeconfig.yml diff --git a/home-assistant/piper/kustomizeconfig.yml b/home-assistant/piper/kustomizeconfig.yml new file mode 100644 index 00000000..58f92ba1 --- /dev/null +++ b/home-assistant/piper/kustomizeconfig.yml @@ -0,0 +1,7 @@ +--- +nameReference: + - kind: ConfigMap + version: v1 + fieldSpecs: + - path: spec/valuesFrom/name + kind: HelmRelease diff --git a/home-assistant/piper/templates/release.yaml b/home-assistant/piper/templates/release.yaml new file mode 100644 index 00000000..faccc610 --- /dev/null +++ b/home-assistant/piper/templates/release.yaml @@ -0,0 +1,21 @@ +--- +apiVersion: helm.toolkit.fluxcd.io/v2beta1 +kind: HelmRelease +metadata: + name: home-assistant-piper +spec: + releaseName: home-assistant-piper + targetNamespace: home-assistant-piper + chart: + spec: + chart: app-template + version: 3.5.1 + reconcileStrategy: ChartVersion + sourceRef: + kind: HelmRepository + name: piper + namespace: flux-system + valuesFrom: + - kind: ConfigMap + name: home-assistant-piper-values + valuesKey: values.yaml diff --git a/home-assistant/piper/templates/repository.yaml b/home-assistant/piper/templates/repository.yaml new file mode 100644 index 00000000..c1a0873a --- /dev/null +++ b/home-assistant/piper/templates/repository.yaml @@ -0,0 +1,9 @@ +--- +apiVersion: source.toolkit.fluxcd.io/v1beta2 +kind: HelmRepository +metadata: + name: piper + namespace: flux-system +spec: + interval: 10m + url: https://bjw-s.github.io/helm-charts diff --git a/home-assistant/piper/values.yaml b/home-assistant/piper/values.yaml new file mode 100644 index 00000000..cdfcf5ae --- /dev/null +++ b/home-assistant/piper/values.yaml @@ -0,0 +1,65 @@ +--- +# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/common-3.3.0/charts/library/common/values.schema.json +controllers: + main: + type: deployment + containers: + piper: + image: + repository: quay.io/linuxserver.io/piper + pullPolicy: IfNotPresent + tag: 1.4.0 + + env: + - name: PIPER_VOICE + value: en_US-lessac-medium + - name: PIPER_LENGTH + value: "1.5" + - name: PIPER_NOISE + value: "0.667" + - name: PIPER_NOISEW + value: "0.333" + - name: PIPER_SPEAKER + value: "0" + - name: PIPER_PROCS + value: "1" + + resources: + requests: + cpu: 10m + memory: 128Mi + limits: + cpu: 250m + memory: 256Mi + + probes: + liveness: + enabled: true + readiness: + enabled: true + startup: + enabled: true + spec: + failureThreshold: 30 + periodSeconds: 5 + +serviceAccount: + create: true + +defaultPodOptions: + automountServiceAccountToken: false + +service: + piper: + controller: main + enabled: true + type: LoadBalancer + ipFamilyPolicy: PreferDualStack + annotations: + metallb.universe.tf/loadBalancerIPs: "10.0.73.21,2a01:aea0:dd3:25a:1000:3:4:21" + external-dns.alpha.kubernetes.io/provider: internal + external-dns.alpha.kubernetes.io/hostname: piper.iot.internal.muehlbachler.io + ports: + http: + port: 10200 + targetPort: 10200