Helm Academy · Lektion

tpl: Render strings fra values

Evaluering af skabelonudtryk gemt i værdier

Lektion 2 af 413 trin

tpl: Render strings fra values er en gratis Helm Academy-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Helm Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Helm Academy-kurset indeholder 4 lektioner i alt.

Skabeloner i værdier

Nogle gange indeholder en værdi i values.yaml selv skabelonsyntaks. Som standard behandler Helm den som en almindelig streng og evaluerer den aldrig.

Mød funktionen tpl

Funktionen tpl tager en streng og en kontekst og renderer derefter strengen som en Go-skabelon præcis dér, hvor du kalder den.

{{ tpl .Values.greeting . }}

Den kræver en kontekst

Det andet argument til tpl er det område, der bruges under renderingen. Hvis du sender rod-dot, kan strengen tilgå Values og Release.

{{ tpl "Hello {{ .Release.Name }}" . }}

En værdi med skabelon

Nu kan en bruger gemme en dynamisk streng i værdierne, f.eks. et værtsnavn, der er bygget ud fra release-navnet, og få den udvidet under renderingen.

host: "{{ .Release.Name }}.example.com"

Gengiv den værdi

I din skabelon skal du sende feltet gennem tpl med rod-konteksten for at omdanne den gemte pladsholder til en rigtig værdi.

host: {{ tpl .Values.host . | quote }}

Hvorfor ikke bare referere til den

En direkte reference udskriver de rå klammer som tekst. Kun tpl evaluerer faktisk de indlejrede direktiver i den gemte streng.

Gengiv også filer

Du kan også give tpl filindhold, så en inkluderet konfigurationsfil kan indeholde pladsholdere, der er specifikke for udgivelsen.

{{ tpl (.Files.Get "config.tpl") . }}

Overførsel af et tilpasset omfang

Konteksten behøver ikke være roden. Overfør en vilkårlig dict, så den gengivne streng præcis ser de variabler, du vælger.

{{ tpl .Values.msg (dict "name" "api") }}

Et praktisk anvendelsestilfælde

Charts lader ofte brugere skabelonbehandle ingress-værter eller annoteringer på denne måde, så fleksibel konfiguration ligger i værdierne i stedet for i skabelonerne.

Pas på fejlene

Hvis den gemte streng indeholder en slåfejl, mislykkes tpl under gengivelsen, så kør test med helm template, når du har tilføjet skabelonbehandlede værdier.

Kombinér med quote

Da en skabelonbehandlet vært kan indeholde punktummer eller kolon, skal du sende resultatet fra tpl gennem quote, så den endelige YAML-værdi forbliver en sikker streng.

host: {{ tpl .Values.host . | quote }}

Hurtigt tjek

Et hurtigt tjek af, hvordan tpl fungerer.

Opsummering

Du har lært, at tpl evaluerer skabelonstrenge, der er gemt i værdier eller filer, ved hjælp af en kontekst, du angiver, f.eks. rodpunktummet. 🎉

Gratis at komme i gang

Lær YAML med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “tpl: Render strings fra values” gratis?

Ja — hele teksten til “tpl: Render strings fra values” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Helm Academy-kurset, skal du opgradere til CoddyKit PRO. Helm Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “tpl: Render strings fra values”?

Evaluering af skabelonudtryk gemt i værdier Du øver dig i Helm Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Helm Academy?

Der kræves ingen tidligere erfaring. Helm Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “tpl: Render strings fra values”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Helm Academy-lektion?

Ja. Alle Helm Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Dyb fletning med mergeOverwrite og dict
  2. tpl: Render strings fra values
  3. Gennemløb filer med range over .Files.Glob
  4. fail og brugerdefinerede valideringsværn
← Tilbage til Helm Academy