58 lines
1.9 KiB
YAML
58 lines
1.9 KiB
YAML
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: "{{ .Release.Name }}-{{ .Chart.Name }}-sfs"
|
|
labels:
|
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
|
spec:
|
|
serviceName: "{{ .Release.Name }}-{{ .Chart.Name }}-service"
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
|
name: "{{ .Release.Name }}-{{ .Chart.Name }}-sfs"
|
|
spec:
|
|
automountServiceAccountToken: false
|
|
containers:
|
|
- name: "{{ .Release.Name }}-{{ .Chart.Name }}"
|
|
image: "ghcr.io/home-assistant/home-assistant:{{ .Chart.AppVersion }}"
|
|
imagePullPolicy: IfNotPresent
|
|
ports:
|
|
- name: http
|
|
containerPort: 8123
|
|
protocol: TCP
|
|
# TODO: liveness-probe, readiness-probe
|
|
resources:
|
|
limits:
|
|
cpu: {{ .Values.resources.limits.cpu }}
|
|
memory: {{ .Values.resources.limits.memory }}
|
|
requests:
|
|
cpu: {{ .Values.resources.requests.cpu }}
|
|
memory: {{ .Values.resources.requests.memory }}
|
|
# TODO: volume mounts
|
|
volumeMounts:
|
|
- mountPath: /config/configuration.yaml
|
|
subPath: configuration.yaml
|
|
name: core-config
|
|
- mountPath: /config/http-config.yaml
|
|
subPath: http-config.yaml
|
|
name: http-config
|
|
# TODO: volumes
|
|
volumes:
|
|
- name: core-config
|
|
configMap:
|
|
name: {{ .Release.Name }}-{{ .Chart.Name }}-core-config
|
|
items:
|
|
- key: config.yaml
|
|
path: config.yaml
|
|
- name: http-config
|
|
configMap:
|
|
name: {{ .Release.Name }}-{{ .Chart.Name }}-core-config
|
|
items:
|
|
- key: http-config.yaml
|
|
path: http-config.yaml
|
|
# TODO: bind to local nodes |