mirror of
https://github.com/hanzo-ml/kserve.git
synced 2026-10-30 20:53:49 +00:00
55 lines
1.8 KiB
YAML
55 lines
1.8 KiB
YAML
{{- if .Values.kserve.servingruntime.enabled }}
|
|
{{- /* 1. Load base resources file */ -}}
|
|
{{- $baseContent := .Files.Get "files/runtimes/resources.yaml" -}}
|
|
|
|
{{- /* 2. Load and render patch file (this processes {{ .Values... }} templates) */ -}}
|
|
{{- $patchRendered := tpl (.Files.Get "files/runtimes/clusterservingruntimes-patch.yaml") . -}}
|
|
|
|
{{- /* 3. Parse base resources into a map by name */ -}}
|
|
{{- $baseMap := dict -}}
|
|
{{- range $obj := splitList "---" $baseContent -}}
|
|
{{- $trimmed := trim $obj -}}
|
|
{{- if $trimmed -}}
|
|
{{- $parsed := fromYaml $trimmed -}}
|
|
{{- if and $parsed $parsed.metadata $parsed.metadata.name -}}
|
|
{{- $name := $parsed.metadata.name -}}
|
|
{{- $_ := set $baseMap $name $parsed -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- /* 4. Parse rendered patch resources */ -}}
|
|
{{- $patchMap := dict -}}
|
|
{{- range $obj := splitList "---" $patchRendered -}}
|
|
{{- $trimmed := trim $obj -}}
|
|
{{- if $trimmed -}}
|
|
{{- $parsed := fromYaml $trimmed -}}
|
|
{{- if and $parsed $parsed.metadata $parsed.metadata.name -}}
|
|
{{- $name := $parsed.metadata.name -}}
|
|
{{- $_ := set $patchMap $name $parsed -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- /* 5. Merge patch into base using deep merge */ -}}
|
|
{{- range $name, $patch := $patchMap -}}
|
|
{{- if hasKey $baseMap $name -}}
|
|
{{- $base := get $baseMap $name -}}
|
|
{{- $merged := include "kserve-common.deepMerge" (list $base $patch) | fromYaml -}}
|
|
{{- $_ := set $baseMap $name $merged -}}
|
|
{{- else -}}
|
|
{{- /* New resource from patch */ -}}
|
|
{{- $_ := set $baseMap $name $patch -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- /* 6. Output all merged resources */ -}}
|
|
{{- range $name := keys $baseMap | sortAlpha }}
|
|
{{- $resource := index $baseMap $name }}
|
|
---
|
|
{{ toYaml $resource }}
|
|
{{ end -}}
|
|
{{- end }}
|
|
|
|
|