Files
UniFi-Network/helm/templates/statefulset.yaml
2025-09-30 13:35:29 +02:00

55 lines
1.7 KiB
YAML

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: {{ include "unifi.name" . }}
labels:
{{- include "unifi.labels" . | nindent 4 }}
spec:
serviceName: {{ include "unifi.name" . }}
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "unifi.name" . }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "unifi.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
{{- if .Values.config.hostNetwork }}
hostNetwork: true
dnsPolicy: ClusterFirstWithHostNet
{{- end }}
containers:
- name: unifi
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
envFrom:
- configMapRef:
name: {{ include "unifi.name.config" . }}
- secretRef:
name: {{ include "unifi.name.secret" . }}
ports:
{{- range .Values.service.ports }}
- name: {{ .name }}
containerPort: {{ .targetPort }}
protocol: {{ default "TCP" .protocol }}
{{- end }}
volumeMounts:
- name: data
mountPath: /config
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes:
{{ toYaml .Values.persistence.accessModes | nindent 10 }}
resources:
requests:
storage: {{ .Values.persistence.size }}
{{- if .Values.persistence.storageClass }}
storageClassName: {{ .Values.persistence.storageClass }}
{{- end }}