|
1 | 1 | {{- $isSingleBinary := eq (include "loki.deployment.isSingleBinary" .) "true" -}} |
2 | 2 | {{- if $isSingleBinary }} |
| 3 | +{{ $component := .Values.singleBinary }} |
| 4 | +{{- if .Values.singleBinary.persistence.enabled }} |
| 5 | +{{ $component = set .Values.singleBinary "podAnnotations" (mergeOverwrite (dict "storage/size" .Values.singleBinary.persistence.size) .Values.singleBinary.podAnnotations) }} |
| 6 | +{{- end }} |
3 | 7 | --- |
4 | 8 | apiVersion: apps/v1 |
5 | 9 | kind: StatefulSet |
@@ -41,236 +45,7 @@ spec: |
41 | 45 | matchLabels: |
42 | 46 | {{- include "loki.singleBinarySelectorLabels" . | nindent 6 }} |
43 | 47 | template: |
44 | | - metadata: |
45 | | - annotations: |
46 | | - checksum/config: {{ include "loki.configMapOrSecretContentHash" (dict "ctx" . "name" "/config.yaml") }} |
47 | | - {{- if .Values.singleBinary.persistence.enabled }} |
48 | | - storage/size: {{ .Values.singleBinary.persistence.size | quote }} |
49 | | - {{- end }} |
50 | | - {{- with .Values.loki.podAnnotations }} |
51 | | - {{- toYaml . | nindent 8 }} |
52 | | - {{- end }} |
53 | | - {{- with .Values.singleBinary.podAnnotations }} |
54 | | - {{- toYaml . | nindent 8 }} |
55 | | - {{- end }} |
56 | | - kubectl.kubernetes.io/default-container: "loki" |
57 | | - labels: |
58 | | - {{- include "loki.singleBinarySelectorLabels" . | nindent 8 }} |
59 | | - {{- with .Values.loki.podLabels }} |
60 | | - {{- toYaml . | nindent 8 }} |
61 | | - {{- end }} |
62 | | - {{- with .Values.singleBinary.podLabels }} |
63 | | - {{- toYaml . | nindent 8 }} |
64 | | - {{- end }} |
65 | | - {{- with .Values.singleBinary.selectorLabels }} |
66 | | - {{- tpl (toYaml .) $ | nindent 8 }} |
67 | | - {{- end }} |
68 | | - app.kubernetes.io/part-of: memberlist |
69 | | - spec: |
70 | | - {{- with .Values.singleBinary.topologySpreadConstraints }} |
71 | | - topologySpreadConstraints: |
72 | | - {{- tpl ( . | toYaml) $ | nindent 8 }} |
73 | | - {{- end }} |
74 | | - serviceAccountName: {{ include "loki.serviceAccountName" (dict "ctx" . "component" .Values "target" "" ) }} |
75 | | - automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} |
76 | | - {{ include "loki.enableServiceLinks" . }} |
77 | | - {{- with .Values.imagePullSecrets }} |
78 | | - imagePullSecrets: |
79 | | - {{- toYaml . | nindent 8 }} |
80 | | - {{- end }} |
81 | | - {{- include "loki.singleBinaryPriorityClassName" . | nindent 6 }} |
82 | | - securityContext: |
83 | | - {{- include "loki.podSecurityContext" . | nindent 8 }} |
84 | | - terminationGracePeriodSeconds: {{ .Values.singleBinary.terminationGracePeriodSeconds }} |
85 | | - {{- if and (semverCompare ">=1.33-0" (include "loki.kubeVersion" .)) (kindIs "bool" .Values.singleBinary.hostUsers) }} |
86 | | - hostUsers: {{ .Values.singleBinary.hostUsers }} |
87 | | - {{- end }} |
88 | | - {{- if .Values.singleBinary.initContainers }} |
89 | | - initContainers: |
90 | | - {{- with .Values.singleBinary.initContainers }} |
91 | | - {{- toYaml . | nindent 8 }} |
92 | | - {{- end }} |
93 | | - {{- end }} |
94 | | - containers: |
95 | | - - name: loki |
96 | | - image: {{ include "loki.image" (dict "ctx" . "component" .Values.singleBinary.image "default" .Values.loki.image "defaultVersion" .Chart.AppVersion) }} |
97 | | - imagePullPolicy: {{ .Values.loki.image.pullPolicy }} |
98 | | - args: |
99 | | - - -config.file=/etc/loki/config/config.yaml |
100 | | - - -target={{ include "loki.singleBinaryTarget" . }} |
101 | | - {{- with .Values.singleBinary.extraArgs }} |
102 | | - {{- toYaml . | nindent 12 }} |
103 | | - {{- end }} |
104 | | - ports: |
105 | | - - name: http-metrics |
106 | | - containerPort: {{ .Values.loki.server.http_listen_port }} |
107 | | - protocol: TCP |
108 | | - - name: grpc |
109 | | - containerPort: {{ .Values.loki.server.grpc_listen_port }} |
110 | | - protocol: TCP |
111 | | - - name: http-memberlist |
112 | | - containerPort: 7946 |
113 | | - protocol: TCP |
114 | | - {{- with .Values.singleBinary.extraEnv }} |
115 | | - env: |
116 | | - {{- toYaml . | nindent 12 }} |
117 | | - {{- end }} |
118 | | - {{- with .Values.singleBinary.extraEnvFrom }} |
119 | | - envFrom: |
120 | | - {{- toYaml . | nindent 12 }} |
121 | | - {{- end }} |
122 | | - securityContext: |
123 | | - {{- toYaml .Values.loki.containerSecurityContext | nindent 12 }} |
124 | | - {{- with .Values.loki.readinessProbe }} |
125 | | - readinessProbe: |
126 | | - {{- toYaml . | nindent 12 }} |
127 | | - {{- end }} |
128 | | - {{- with .Values.loki.livenessProbe }} |
129 | | - livenessProbe: |
130 | | - {{- toYaml . | nindent 12 }} |
131 | | - {{- end }} |
132 | | - {{- with .Values.loki.startupProbe }} |
133 | | - startupProbe: |
134 | | - {{- toYaml . | nindent 12 }} |
135 | | - {{- end }} |
136 | | - volumeMounts: |
137 | | - - name: tmp |
138 | | - mountPath: /tmp |
139 | | - - name: config |
140 | | - mountPath: /etc/loki/config |
141 | | - - name: runtime-config |
142 | | - mountPath: /etc/loki/runtime-config |
143 | | - {{- if .Values.singleBinary.persistence.enabled }} |
144 | | - - name: storage |
145 | | - mountPath: /var/loki |
146 | | - {{- end }} |
147 | | - {{- if .Values.sidecar.rules.enabled }} |
148 | | - - name: sc-rules-volume |
149 | | - mountPath: {{ .Values.sidecar.rules.folder | quote }} |
150 | | - {{- end}} |
151 | | - {{- with .Values.singleBinary.extraVolumeMounts }} |
152 | | - {{- toYaml . | nindent 12 }} |
153 | | - {{- end }} |
154 | | - resources: |
155 | | - {{- toYaml .Values.singleBinary.resources | nindent 12 }} |
156 | | - {{- if .Values.sidecar.rules.enabled }} |
157 | | - - name: loki-sc-rules |
158 | | - image: {{ include "loki.image" (dict "ctx" . "component" .Values.sidecar.image) }} |
159 | | - imagePullPolicy: {{ .Values.sidecar.image.pullPolicy }} |
160 | | - env: |
161 | | - - name: METHOD |
162 | | - value: {{ .Values.sidecar.rules.watchMethod }} |
163 | | - - name: LABEL |
164 | | - value: "{{ .Values.sidecar.rules.label }}" |
165 | | - {{- if .Values.sidecar.rules.labelValue }} |
166 | | - - name: LABEL_VALUE |
167 | | - value: {{ quote .Values.sidecar.rules.labelValue }} |
168 | | - {{- end }} |
169 | | - - name: FOLDER |
170 | | - value: "{{ .Values.sidecar.rules.folder }}" |
171 | | - {{- if .Values.sidecar.rules.folderAnnotation }} |
172 | | - - name: FOLDER_ANNOTATION |
173 | | - value: "{{ .Values.sidecar.rules.folderAnnotation }}" |
174 | | - {{- end }} |
175 | | - - name: RESOURCE |
176 | | - value: {{ quote .Values.sidecar.rules.resource }} |
177 | | - {{- if .Values.sidecar.enableUniqueFilenames }} |
178 | | - - name: UNIQUE_FILENAMES |
179 | | - value: "{{ .Values.sidecar.enableUniqueFilenames }}" |
180 | | - {{- end }} |
181 | | - {{- if .Values.sidecar.rules.searchNamespace }} |
182 | | - - name: NAMESPACE |
183 | | - value: "{{ .Values.sidecar.rules.searchNamespace | join "," }}" |
184 | | - {{- end }} |
185 | | - {{- if .Values.sidecar.skipTlsVerify }} |
186 | | - - name: SKIP_TLS_VERIFY |
187 | | - value: "{{ .Values.sidecar.skipTlsVerify }}" |
188 | | - {{- end }} |
189 | | - {{- if .Values.sidecar.disableX509StrictVerification }} |
190 | | - - name: DISABLE_X509_STRICT_VERIFICATION |
191 | | - value: "{{ .Values.sidecar.disableX509StrictVerification }}" |
192 | | - {{- end }} |
193 | | - {{- if .Values.sidecar.rules.script }} |
194 | | - - name: SCRIPT |
195 | | - value: "{{ .Values.sidecar.rules.script }}" |
196 | | - {{- end }} |
197 | | - {{- if .Values.sidecar.rules.watchServerTimeout }} |
198 | | - - name: WATCH_SERVER_TIMEOUT |
199 | | - value: "{{ .Values.sidecar.rules.watchServerTimeout }}" |
200 | | - {{- end }} |
201 | | - {{- if .Values.sidecar.rules.watchClientTimeout }} |
202 | | - - name: WATCH_CLIENT_TIMEOUT |
203 | | - value: "{{ .Values.sidecar.rules.watchClientTimeout }}" |
204 | | - {{- end }} |
205 | | - {{- if .Values.sidecar.rules.logLevel }} |
206 | | - - name: LOG_LEVEL |
207 | | - value: "{{ .Values.sidecar.rules.logLevel }}" |
208 | | - {{- end }} |
209 | | - {{- if .Values.sidecar.livenessProbe }} |
210 | | - livenessProbe: |
211 | | - {{- toYaml .Values.sidecar.livenessProbe | nindent 12 }} |
212 | | - {{- end }} |
213 | | - {{- if .Values.sidecar.readinessProbe }} |
214 | | - readinessProbe: |
215 | | - {{- toYaml .Values.sidecar.readinessProbe | nindent 12 }} |
216 | | - {{- end }} |
217 | | - {{- if .Values.sidecar.startupProbe }} |
218 | | - startupProbe: |
219 | | - {{- toYaml .Values.sidecar.startupProbe | nindent 12 }} |
220 | | - {{- end }} |
221 | | - {{- if .Values.sidecar.resources }} |
222 | | - resources: |
223 | | - {{- toYaml .Values.sidecar.resources | nindent 12 }} |
224 | | - {{- end }} |
225 | | - {{- if .Values.sidecar.securityContext }} |
226 | | - securityContext: |
227 | | - {{- toYaml .Values.sidecar.securityContext | nindent 12 }} |
228 | | - {{- end }} |
229 | | - volumeMounts: |
230 | | - - name: tmp |
231 | | - mountPath: /tmp |
232 | | - - name: sc-rules-volume |
233 | | - mountPath: {{ .Values.sidecar.rules.folder | quote }} |
234 | | - {{- end}} |
235 | | - {{- with .Values.singleBinary.extraContainers }} |
236 | | - {{- toYaml . | nindent 8 }} |
237 | | - {{- end }} |
238 | | - {{- with .Values.singleBinary.affinity }} |
239 | | - affinity: |
240 | | - {{- tpl ( . | toYaml) $ | nindent 8 }} |
241 | | - {{- end }} |
242 | | - {{- with .Values.singleBinary.dnsConfig | default .Values.loki.dnsConfig }} |
243 | | - dnsConfig: |
244 | | - {{- toYaml . | nindent 8 }} |
245 | | - {{- end }} |
246 | | - {{- with .Values.singleBinary.nodeSelector }} |
247 | | - nodeSelector: |
248 | | - {{- toYaml . | nindent 8 }} |
249 | | - {{- end }} |
250 | | - {{- with .Values.singleBinary.tolerations }} |
251 | | - tolerations: |
252 | | - {{- toYaml . | nindent 8 }} |
253 | | - {{- end }} |
254 | | - volumes: |
255 | | - - name: tmp |
256 | | - emptyDir: {} |
257 | | - - name: config |
258 | | - {{- include "loki.configVolume" . | nindent 10 }} |
259 | | - - name: runtime-config |
260 | | - configMap: |
261 | | - name: {{ template "loki.name" . }}-runtime |
262 | | - {{- if .Values.sidecar.rules.enabled }} |
263 | | - - name: sc-rules-volume |
264 | | - {{- if .Values.sidecar.rules.sizeLimit }} |
265 | | - emptyDir: |
266 | | - sizeLimit: {{ .Values.sidecar.rules.sizeLimit }} |
267 | | - {{- else }} |
268 | | - emptyDir: {} |
269 | | - {{- end -}} |
270 | | - {{- end -}} |
271 | | - {{- with .Values.singleBinary.extraVolumes }} |
272 | | - {{- toYaml . | nindent 8 }} |
273 | | - {{- end }} |
| 48 | + {{- include "loki.podTemplate" (dict "target" "single-binary" "component" $component "ctx" .) | nindent 4 }} |
274 | 49 | {{- if .Values.singleBinary.persistence.enabled }} |
275 | 50 | volumeClaimTemplates: |
276 | 51 | - apiVersion: v1 |
|
0 commit comments