76 lines
3.2 KiB
Smarty
76 lines
3.2 KiB
Smarty
{{/*
|
||
使用滚动 TAG 时的警告信息(如:latest)。
|
||
调用:
|
||
{{ include "common.warnings.rollingTag" .Values.path.to.the.imageRoot }}
|
||
*/}}
|
||
{{- define "common.warnings.rollingTag" -}}
|
||
|
||
{{- if and (contains "colovu.com/" .repository) (not (.tag | toString | regexFind "-r\\d+$|sha256:")) }}
|
||
WARNING: Rolling tag detected ({{ .repository }}:{{ .tag }}), please note that it is strongly recommended to avoid using rolling tags in a production environment.
|
||
{{- end }}
|
||
{{- end -}}
|
||
|
||
{{/*
|
||
在所有部署中针对设置默认 Resource 时的警告信息。
|
||
调用:
|
||
{{ include "common.warnings.resources" (dict "sections" (list "path1" "path2") context $) }}
|
||
举例:
|
||
{{- include "common.warnings.resources" (dict "sections" (list "csiProvider.provider" "server" "volumePermissions" "") "context" $) }}
|
||
The list in the example assumes that the following values exist:
|
||
- csiProvider.provider.resources
|
||
- server.resources
|
||
- volumePermissions.resources
|
||
- resources
|
||
*/}}
|
||
{{- define "common.warnings.resources" -}}
|
||
{{- $values := .context.Values -}}
|
||
{{- $printMessage := false -}}
|
||
{{ $affectedSections := list -}}
|
||
{{- range .sections -}}
|
||
{{- if eq . "" -}}
|
||
{{/* Case where the resources section is at the root (one main deployment in the chart) */}}
|
||
{{- if not (index $values "resources") -}}
|
||
{{- $affectedSections = append $affectedSections "resources" -}}
|
||
{{- $printMessage = true -}}
|
||
{{- end -}}
|
||
{{- else -}}
|
||
{{/* Case where the are multiple resources sections (more than one main deployment in the chart) */}}
|
||
{{- $keys := split "." . -}}
|
||
{{/* We iterate through the different levels until arriving to the resource section. Example: a.b.c.resources */}}
|
||
{{- $section := $values -}}
|
||
{{- range $keys -}}
|
||
{{- $section = index $section . -}}
|
||
{{- end -}}
|
||
{{- if not (index $section "resources") -}}
|
||
{{/* If the section has enabled=false or replicaCount=0, do not include it */}}
|
||
{{- if and (hasKey $section "enabled") -}}
|
||
{{- if index $section "enabled" -}}
|
||
{{/* enabled=true */}}
|
||
{{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}}
|
||
{{- $printMessage = true -}}
|
||
{{- end -}}
|
||
{{- else if and (hasKey $section "replicaCount") -}}
|
||
{{/* We need a casting to int because number 0 is not treated as an int by default */}}
|
||
{{- if (gt (index $section "replicaCount" | int) 0) -}}
|
||
{{/* replicaCount > 0 */}}
|
||
{{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}}
|
||
{{- $printMessage = true -}}
|
||
{{- end -}}
|
||
{{- else -}}
|
||
{{/* Default case, add it to the affected sections */}}
|
||
{{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}}
|
||
{{- $printMessage = true -}}
|
||
{{- end -}}
|
||
{{- end -}}
|
||
{{- end -}}
|
||
{{- end -}}
|
||
{{- if $printMessage }}
|
||
|
||
WARNING: There are "resources" sections in the chart not set. Using "resourcesPreset" is not recommended for production. For production installations, please set the following values according to your workload needs:
|
||
{{- range $affectedSections }}
|
||
- {{ . }}
|
||
{{- end }}
|
||
+info https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
|
||
{{- end -}}
|
||
{{- end -}}
|