From 8547eb098ac59b9f0866d550dc5977b6dc647514 Mon Sep 17 00:00:00 2001 From: auricom Date: Mon, 28 Dec 2020 12:53:24 +0100 Subject: [PATCH] add home-assistant --- cluster/home/_namespace.yaml | 7 +++ cluster/home/_volumes.yaml | 13 +++++ cluster/home/home-assistant.yaml | 85 ++++++++++++++++++++++++++++++ secrets/helmrelease-home-hass.yaml | 36 +++++++++++++ 4 files changed, 141 insertions(+) create mode 100644 cluster/home/_namespace.yaml create mode 100644 cluster/home/_volumes.yaml create mode 100644 cluster/home/home-assistant.yaml create mode 100644 secrets/helmrelease-home-hass.yaml diff --git a/cluster/home/_namespace.yaml b/cluster/home/_namespace.yaml new file mode 100644 index 000000000..d4c66319d --- /dev/null +++ b/cluster/home/_namespace.yaml @@ -0,0 +1,7 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: home + labels: + goldilocks.fairwinds.com/enabled: "true" diff --git a/cluster/home/_volumes.yaml b/cluster/home/_volumes.yaml new file mode 100644 index 000000000..ac0c28cd4 --- /dev/null +++ b/cluster/home/_volumes.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: hass-config + namespace: home +spec: + accessModes: + - ReadWriteOnce + storageClassName: longhorn-backups + resources: + requests: + storage: 10Gi diff --git a/cluster/home/home-assistant.yaml b/cluster/home/home-assistant.yaml new file mode 100644 index 000000000..5d0652723 --- /dev/null +++ b/cluster/home/home-assistant.yaml @@ -0,0 +1,85 @@ +--- +apiVersion: helm.toolkit.fluxcd.io/v2beta1 +kind: HelmRelease +metadata: + name: home-assistant + namespace: home +spec: + interval: 5m + chart: + spec: + # renovate: registryUrl=https://k8s-at-home.com/charts/ + chart: home-assistant + version: 5.2.1 + sourceRef: + kind: HelmRepository + name: k8s-at-home-charts + namespace: flux-system + interval: 5m + values: + controllerType: deployment + image: + repository: homeassistant/home-assistant + tag: 2020.12.1 + env: + TZ: "Europe/Paris" + hostNetwork: true + dnsPolicy: ClusterFirstWithHostNet + service: + annotations: + prometheus.io/probe: "true" + prometheus.io/protocol: http + type: LoadBalancer + externalIPs: + - 192.168.9.203 + externalTrafficPolicy: Local + ingress: + enabled: true + annotations: + kubernetes.io/ingress.class: "nginx" + prometheus: + serviceMonitor: + enabled: false + probes: + liveness: + enabled: false + readiness: + enabled: false + startup: + enabled: false + persistence: + config: + enabled: true + existingClaim: hass-config + addons: + codeserver: + enabled: true + image: + repository: codercom/code-server + tag: 3.8.0 + workingDir: "/config" + args: + - --auth + - "none" + - --user-data-dir + - "/config/.vscode" + - --extensions-dir + - "/config/.vscode" + ingress: + enabled: true + annotations: + kubernetes.io/ingress.class: "nginx" + volumeMounts: + - name: config + mountPath: /config + resources: + requests: + cpu: 500m + memory: 1000Mi + limits: + memory: 2500Mi + postgresql: + enabled: false + valuesFrom: + - kind: ConfigMap + name: helmrelease-home-hass diff --git a/secrets/helmrelease-home-hass.yaml b/secrets/helmrelease-home-hass.yaml new file mode 100644 index 000000000..03d268de3 --- /dev/null +++ b/secrets/helmrelease-home-hass.yaml @@ -0,0 +1,36 @@ +apiVersion: v1 +data: + values.yaml: ENC[AES256_GCM,data:PvPn63OiwJaEmCrtNjYCbJ7e/oiL+FQCy81CeJpGkGKbg30VwBcPM6MvT87EG4sihdwsKNanOYh9MxVMVRbKzYv7DWFw8pd+VKcFuGr7vYMoCdGDN5EIehMX0iwxQ3Xpx3VwjFpvkPLlRkP0s38gvuHk/Lc4ZXtepjqxZuJUY0JPcj0UQKvWkUTsjqM0H/4v5WWJ582BwQvCeGdbSIIPi+448qHWAhAAeRurCwKMHadGae1HGiI3ECbGDxTAbxtSr9cFs08KJgii+DLVozMeOy+COHzJGG5G2NG5JWBh6pb2R861ybUAiuTfj33aKpF+6iQ6skFKa40iB3QsJJEAzenO0wQPBo6W5p2fe1xugJDDhJPHdiyQ4aVAyA2ULbDZQmdZrsD2ENd4DI+O4nUd7e6jEOdLDrSqO0h33RVZapo+vKGJfavEqSLQ7t6k+6IZcKK/sv/AfEkeT93NeUYZvVHzKWIRbs7sPoF60bN4MfrsaM8FJ+Bmfgpregeld5daXKIoVZo7cAxu3A1huB1XCQ4HAYmsxyx3M9kRutoRXjwe/Bzg/JzwvqjqTTPEZB6WKa3RAUzWLb+EOdSMVlGXU4SM1kvGr/HAlTU3xc0zvjuyktSj0VTCeF035dXh4/pSIthIdz4wRDAk+3v4tUnDBQSwgwZg8TsyY9Hf2TOhz5SHcqM5qZ4hbOOVea8763Dp55yc0FmV3dEyflWn0vrS+pUGNaDBRMkZvNDyHKxOtGI8MHwEYiMRtT9O4zCMzRZWJ/qlzwtTbQwcuSH8ioa8ixJgvVfbvEme,iv:tcR6kaZbwScjHob7H+q2RFnu/ZnSs8pDGDLqzWBDmPk=,tag:PsUVLGQ2SVnI2rmkBMwG5A==,type:str] +kind: ConfigMap +metadata: + creationTimestamp: null + name: helmrelease-home-hass + namespace: home +sops: + kms: [] + gcp_kms: [] + azure_kv: [] + hc_vault: [] + lastmodified: '2020-12-28T13:35:51Z' + mac: ENC[AES256_GCM,data:8REwuhFyRWwNX/tdjEfUnE2Gz7fZ3j3HQVid6n/Cbn8Hs3t7BYAEY/2/wUxSudcYP2Dk3iaNMOVi9peBus+e60O8KX4Zwb4fV0wJMXuNBPpLCb7DGx+cHGYxr5f6F6CbThXQFj7/FYBuelTyUEPFUZCdhvQFhDXF5wQ0i7HSVSE=,iv:CQYvwVUj9Q4dj8oUP9kpkK/c89NtQye3AhVC5qx1Mcg=,tag:ub7N3jR4Byu2zRAaDbOdFw==,type:str] + pgp: + - created_at: '2020-12-28T13:35:51Z' + enc: | + -----BEGIN PGP MESSAGE----- + + hQGMA/JorPHm1g9XAQv/T8H+HCtJn51mZswpgjlRILm416mQBspbSzTbce1MuEtW + 9ihFi+5dhfAS6xUU9wfPQNQY9v8XJeHE3siuKti1Ojfz1m64bFcmpQuqh4UfxaFg + kOYM3TgS10KtBOi9wzysQOahn1z5swZfkhc9x7zIXmdQT+m2H4rAYibloLI2TmVm + WbAsc4+Nmnt9vVgSnYGRQv/qq1zOkM4Z4UXYPVd/oLa+0wQf7JdwrklMAeHvpFtC + o44TXv6hfgYDevVDK4ZuuokcOHgeJOJSgW6KQYSvO6pdlBLAl8KyDxTNHFgKkCXg + cHSwsNC66EyONtKfkLVvgmF9d91UbsuQnkXNGPqcZI3V128BzOD/yl/uVHyV18DE + SdBP7AOBbIX0vekHI2CaAL1eP3O9D1Jg4yM9RcByMNRMSfRvS0i0XM1Q2VlC3ZlQ + GSXTpB3kFJ4Eni4nIgDkrWZMALftIwQ2rY1z76PlwZacLv7hx3DtHIvTVi8P+Ain + O+qt3ssk68FAbH/YZtld0l4B6A+GaaCf3PyZdv37X5t9AB4WcAh2CselSjOk1nEC + mE+wPm3VgChASLqUZ1W0U20FcuH3Zue2QXGaOzSHbZHLf/kijszT+FsA/vACl7Cq + AHzrD1hwBoes54WfO+C8 + =i3FD + -----END PGP MESSAGE----- + fp: C8F8A49D04A1AB639F8EA21CDBA4B1DCB1FA5BDD + encrypted_regex: ^(data|stringData)$ + version: 3.6.1