--- # yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json apiVersion: helm.toolkit.fluxcd.io/v2beta2 kind: HelmRelease metadata: name: &app home-assistant namespace: default spec: interval: 30m chart: spec: chart: app-template version: 2.5.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system maxHistory: 2 install: createNamespace: true remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false values: defaultPodOptions: securityContext: runAsUser: 0 runAsGroup: 0 fsGroup: 0 fsGroupChangePolicy: OnRootMismatch nodeSelector: nodo.feature.node.kubernetes.io/rflink: "true" controllers: main: annotations: reloader.stakater.com/auto: "true" initContainers: init-db: image: repository: ghcr.io/onedr0p/postgres-init tag: 16 envFrom: &envFrom - secretRef: name: home-assistant-secret containers: main: image: repository: ghcr.io/onedr0p/home-assistant tag: 2024.1.6@sha256:3ae078c549ba6a0d2c6f2921aab53e492cd688956da6a51867e999f87ed59d13 env: TZ: "${TIMEZONE}" POSTGRES_HOST: ${POSTGRES_HOST} POSTGRES_DB: home_assistant envFrom: *envFrom probes: liveness: enabled: false readiness: enabled: false startup: enabled: false resources: requests: cpu: 10m memory: 128Mi limits: memory: 1Gi securityContext: privileged: true service: main: type: LoadBalancer loadBalancerIP: ${CLUSTER_LB_HASS} externalTrafficPolicy: Local ports: http: port: 8123 ingress: main: enabled: true className: "nginx" annotations: hajimari.io/icon: mdi:home-assistant hosts: - host: &host "hass.${SECRET_CLUSTER_DOMAIN}" paths: - path: / service: name: main port: http tls: - hosts: - *host persistence: config: enabled: true existingClaim: *app globalMounts: - path: /config usb: enabled: true type: hostPath hostPath: /dev/serial/by-id/usb-Arduino__www.arduino.cc__0042_5503731323735171A241-if00 hostPathType: CharDevice globalMounts: - path: /dev/ttyUSB0