diff --git a/apps-kustomized/homeassistant/deploy.yaml b/apps-kustomized/homeassistant/deploy.yaml new file mode 100644 index 0000000..e9ef031 --- /dev/null +++ b/apps-kustomized/homeassistant/deploy.yaml @@ -0,0 +1,67 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/name: home-assistant + name: home-assistant +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: home-assistant + template: + metadata: + labels: + app.kubernetes.io/name: home-assistant + spec: + automountServiceAccountToken: true + containers: + - env: + - name: TZ + value: UTC + image: ghcr.io/home-assistant/home-assistant:2023.11.2 + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 3 + periodSeconds: 10 + successThreshold: 1 + tcpSocket: + port: 8123 + timeoutSeconds: 1 + name: homeassistant-home-assistant + ports: + - containerPort: 8123 + name: http + protocol: TCP + readinessProbe: + failureThreshold: 3 + periodSeconds: 10 + successThreshold: 1 + tcpSocket: + port: 8123 + timeoutSeconds: 1 + securityContext: + privileged: true + startupProbe: + failureThreshold: 30 + periodSeconds: 5 + successThreshold: 1 + tcpSocket: + port: 8123 + timeoutSeconds: 1 + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /config + name: config + dnsPolicy: ClusterFirst + enableServiceLinks: true + restartPolicy: Always + schedulerName: default-scheduler + serviceAccount: default + serviceAccountName: default + terminationGracePeriodSeconds: 30 + volumes: + - name: config + persistentVolumeClaim: + claimName: home-assistant-config diff --git a/apps-kustomized/homeassistant/pvc.yaml b/apps-kustomized/homeassistant/pvc.yaml new file mode 100644 index 0000000..a1a68d9 --- /dev/null +++ b/apps-kustomized/homeassistant/pvc.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + labels: + app.kubernetes.io/name: home-assistant + name: home-assistant-config +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 50Gi + storageClassName: local-path diff --git a/apps-kustomized/homeassistant/service.yaml b/apps-kustomized/homeassistant/service.yaml new file mode 100644 index 0000000..da1424c --- /dev/null +++ b/apps-kustomized/homeassistant/service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app.kubernetes.io/name: home-assistant + name: home-assistant +spec: + ports: + - name: http + port: 80 + targetPort: 8123 + selector: + app.kubernetes.io/name: home-assistant + type: LoadBalancer diff --git a/everything-app/home-assistant.yaml b/everything-app/home-assistant.yaml new file mode 100644 index 0000000..8ded66a --- /dev/null +++ b/everything-app/home-assistant.yaml @@ -0,0 +1,17 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: home-assistant + namespace: argocd +spec: + destination: + namespace: home-assistant + server: https://kubernetes.default.svc + project: apps + source: + path: apps-kustomized/home-assistant + repoURL: https://git.martyn.berlin/martyn/infra4talos + targetRevision: HEAD + syncPolicy: + automated: + selfHeal: true