Files, Template og rotkonteksten
Få tilgang til medfølgende filer og punktomfanget.
Files, Template og rotkonteksten er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Rotkonteksten: punktumet
Øverst i en mal er punktumet . rotkonteksten som inneholder alle innebygde objekter: .Values, .Release, .Chart og flere.
Punktum kan endre kontekst
Blokker som with og range binder punktumet til en smalere verdi på nytt. Derfor betyr . ikke alltid roten inne i hver blokk.
Nå roten med $
Variabelen $ peker alltid på den opprinnelige rotkonteksten. Inne i en range eller with bruker du $ for å komme tilbake til .Values eller .Release.
{{ range .Values.ports }}
release: {{ $.Release.Name }}
{{ end }}Files-objektet
.Files lar maler lese filer som ikke er maler, og som er lagt ved i chartet, for eksempel en konfigurasjonsfil du vil levere i en ConfigMap. 📄
Lese en fil som tekst
.Files.Get returnerer innholdet i en fil som en streng. Send inn stien relativt til chart-roten for å hente den inn i manifestet.
data:
app.conf: |
{{ .Files.Get "config/app.conf" | indent 4 }}Files har begrensninger
.Files kan ikke lese alt: templates/ og Chart.yaml er utelatt, og mønstre i .helmignore hoppes over under pakking.
Finne flere filer med glob-mønstre
.Files.Glob finner flere filer ved hjelp av et mønster og returnerer et map som du kan bruke range på for å bygge mange ConfigMap-oppføringer samtidig.
{{ range $path, $bytes := .Files.Glob "config/*" }}...{{ end }}Kode filinnhold
Binærdata eller hemmelige data bør kodes med base64. Kjed .Files.Get sammen med b64enc for å bygge det trygt inn i en Secret-ressurs.
ca.crt: {{ .Files.Get "certs/ca.crt" | b64enc }}Template-objektet
.Template-objektet beskriver filen som gjengis. .Template.Name er stien til den, og er nyttig i kommentarer og feilmeldinger.
# rendered from {{ .Template.Name }}BasePath peker på templates
.Template.BasePath gir stien til templates-katalogen i chartet som gjengis. Den brukes sammen med .Template.Name for å finne frem til gjeldende fil.
Sende roten til hjelpefunksjoner
Navngitte maler ser bare konteksten du gir dem. Hvis du sender inn $ eller rotpunktumet, kan en hjelpefunksjon fortsatt nå .Values og .Release.
{{ include "mychart.labels" $ }}Hurtigsjekk
De befinner Dem i en range-løkke der punktumet er bundet på nytt til et listeelement.
Oppsummering: Filer og rotkontekst
De lærte at punktumet er rotkonteksten, at $ alltid gir tilgang til den, og at .Files samt .Template lar Dem bygge inn medfølgende filer og finne den gjeldende malen.
Lær deg DevOps-bootcamp med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 142
- Leksjoner
- 568
Ofte stilte spørsmål
Er leksjonen «Files, Template og rotkonteksten» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Files, Template og rotkonteksten», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Hva lærer jeg i «Files, Template og rotkonteksten»?
Få tilgang til medfølgende filer og punktomfanget. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med DevOps-bootcamp?
Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Files, Template og rotkonteksten»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?
Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Values-objektet og nestet tilgang
- Release-metadata via .Release
- Chart- og Capabilities-objekter
- Files, Template og rotkonteksten