Files
devops-infra-helm-charts-gcp/helm-templates/contour-v1.33.3-v2/templates/envoy/_init_containers.tpl
T
2026-08-26 03:39:42 +05:30

65 lines
2.5 KiB
Smarty

{{/*
Copyright Broadcom, Inc. All Rights Reserved.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{/*
Returns an init-container that bootstraps Envoy configuration so it's ready to be consumed by Envoy "main" container
*/}}
{{- define "contour.envoy.defaultInitContainers.initConfig" -}}
- name: envoy-initconfig
image: {{ include "common.images.image" ( dict "imageRoot" .Values.contour.image "global" .Values.global) }}
imagePullPolicy: {{ .Values.contour.image.pullPolicy }}
{{- if .Values.envoy.defaultInitContainers.initConfig.containerSecurityContext.enabled }}
securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.envoy.defaultInitContainers.initConfig.containerSecurityContext "context" .) | nindent 4 }}
{{- end }}
{{- if .Values.envoy.defaultInitContainers.initConfig.resources }}
resources: {{- toYaml .Values.envoy.defaultInitContainers.initConfig.resources | nindent 4 }}
{{- else if ne .Values.envoy.defaultInitContainers.initConfig.resourcesPreset "none" }}
resources: {{- include "common.resources.preset" (dict "type" .Values.envoy.defaultInitContainers.initConfig.resourcesPreset) | nindent 4 }}
{{- end }}
command:
- contour
args:
- bootstrap
- /config/envoy.json
- --xds-address={{ include "common.names.fullname" . }}
- --xds-port={{ .Values.contour.service.ports.xds }}
- --resources-dir=/config/resources
- --envoy-cafile=/certs/ca.crt
- --envoy-cert-file=/certs/tls.crt
- --envoy-key-file=/certs/tls.key
{{- if .Values.contour.overloadManager.enabled }}
- --overload-max-heap={{ int .Values.contour.overloadManager.maxHeapBytes }}
{{- end }}
env:
- name: CONTOUR_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
{{- if .Values.contour.extraEnvVars }}
{{- include "common.tplvalues.render" (dict "value" .Values.contour.extraEnvVars "context" $) | nindent 4 }}
{{- end }}
{{- if or .Values.contour.extraEnvVarsCM .Values.contour.extraEnvVarsSecret }}
envFrom:
{{- if .Values.contour.extraEnvVarsCM }}
- configMapRef:
name: {{ tpl .Values.contour.extraEnvVarsCM . }}
{{- end }}
{{- if .Values.contour.extraEnvVarsSecret }}
- secretRef:
name: {{ tpl .Values.contour.extraEnvVarsSecret . }}
{{- end }}
{{- end }}
volumeMounts:
- name: empty-dir
mountPath: /config
subPath: app-conf-dir
- name: envoycert
mountPath: /certs
readOnly: true
- name: empty-dir
mountPath: /admin
subPath: app-admin-dir
{{- end -}}