kubelatte-ce
Форк от sbertech/kubelatte-ce
93 строки · 3.4 Кб
1apiVersion: apps/v1
2kind: Deployment
3metadata:
4name: kubelatte-ce
5spec:
6replicas: 1
7selector:
8matchLabels:
9app.kubernetes.io/name: kubelatte-ce
10template:
11metadata:
12labels:
13app.kubernetes.io/name: kubelatte-ce
14spec:
15restartPolicy: {{ .Values.restartPolicy }}
16serviceAccountName: {{ .Values.serviceAccount.name }}
17terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }}
18{{- if .Values.podSecurityContext.enabled }}
19securityContext: {{- omit .Values.podSecurityContext "enabled" | toYaml | nindent 8 }}
20{{- end }}
21imagePullSecrets:
22{{- range .Values.image.pullSecrets }}
23- name: {{ . }}
24{{- end }}
25containers:
26- name: kubelatte
27{{- if .Values.podSecurityContext.enabled }}
28securityContext: {{- omit .Values.containerSecurityContext "enabled" | toYaml | nindent 12 }}
29{{- end }}
30image: {{ printf "%s/%s:%s" .Values.image.registry .Values.image.repository .Values.image.tag }}
31imagePullPolicy: {{ .Values.image.pullPolicy }}
32terminationMessagePath: /dev/termination-log
33terminationMessagePolicy: File
34args:
35- '--health-probe-bind-address=:8081'
36- '--metrics-bind-address=127.0.0.1:8080'
37- '--leader-elect'
38env:
39- name: KUBERNETES_SERVICE_HOST
40value: kubernetes.default.svc.cluster.local
41- name: NAMESPACE
42valueFrom:
43fieldRef:
44apiVersion: v1
45fieldPath: metadata.namespace
46envFrom:
47- configMapRef:
48name: kubelatte-ce-env
49{{- if .Values.livenessProbe.enabled }}
50livenessProbe:
51httpGet:
52path: /healthz
53port: 8081
54scheme: HTTP
55initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
56timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
57periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
58successThreshold: {{ .Values.livenessProbe.successThreshold }}
59failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
60{{- end }}
61ports:
62- containerPort: 8443
63name: https-8443
64protocol: TCP
65{{- if .Values.readinessProbe.enabled }}
66readinessProbe:
67httpGet:
68path: /readyz
69port: 8081
70scheme: HTTP
71initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
72timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
73periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
74successThreshold: {{ .Values.readinessProbe.successThreshold }}
75failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
76{{- end }}
77
78resources:
79{{ toYaml .Values.resources | nindent 12 }}
80volumeMounts:
81- name: kubelatte-dir
82mountPath: /var/kubelatte
83- name: webhook-certs
84readOnly: true
85mountPath: /var/webhook/certs
86volumes:
87- name: kubelatte-dir
88emptyDir:
89sizeLimit: 500Mi
90- name: webhook-certs
91secret:
92secretName: webhook-cert
93defaultMode: 256
94