0Pricing
DevOps Bootcamp · Lekcja

Files, Template i kontekst główny

Dostęp do dołączonych plików i zakresu kropki.

Files, Template i kontekst główny to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Kontekst główny: kropka

Na początku szablonu kropka . oznacza kontekst główny zawierający wszystkie wbudowane obiekty: .Values, .Release, .Chart i inne.

Kropka może zmieniać zakres

Bloki takie jak with i range przypisują kropkę do węższego zakresu wartości. Dlatego wewnątrz każdego bloku . nie zawsze oznacza kontekst główny.

Powrót do kontekstu głównego za pomocą dolara

Zmienna $ zawsze wskazuje pierwotny kontekst główny. Wewnątrz range lub with należy użyć $, aby ponownie uzyskać dostęp do .Values lub .Release.

{{ range .Values.ports }}
release: {{ $.Release.Name }}
{{ end }}

Obiekt Files

.Files pozwala szablonom odczytywać dołączone do chartu pliki niebędące szablonami, takie jak plik konfiguracji przeznaczony do umieszczenia w zasobie ConfigMap. 📄

Odczytywanie pliku jako tekstu

.Files.Get zwraca zawartość pliku jako ciąg znaków. Należy przekazać ścieżkę względną względem katalogu głównego chartu, aby wstawić plik do manifestu.

data:
  app.conf: |
{{ .Files.Get "config/app.conf" | indent 4 }}

Files ma ograniczenia

.Files nie może odczytać wszystkiego: templates/ i Chart.yaml są wykluczone, a wzorce .helmignore są pomijane podczas pakowania.

Dopasowywanie wielu plików wzorcem

.Files.Glob dopasowuje wiele plików według wzorca i zwraca mapę, po której można iterować za pomocą range, aby jednocześnie utworzyć wiele wpisów ConfigMap.

{{ range $path, $bytes := .Files.Glob "config/*" }}...{{ end }}

Kodowanie zawartości plików

Dane binarne lub poufne należy kodować za pomocą base64. Połączenie .Files.Get z b64enc pozwala bezpiecznie umieścić je w zasobie Secret.

ca.crt: {{ .Files.Get "certs/ca.crt" | b64enc }}

Obiekt Template

Obiekt .Template opisuje renderowany plik. .Template.Name to jego ścieżka, przydatna w komentarzach i komunikatach o błędach.

# rendered from {{ .Template.Name }}

BasePath wskazuje katalog templates

.Template.BasePath podaje ścieżkę do katalogu templates chartu, który jest renderowany. W połączeniu z .Template.Name pozwala ustalić bieżące położenie.

Przekazywanie kontekstu głównego do helperów

Szablony nazwane widzą tylko kontekst, który zostanie im przekazany. Przekazanie $ lub głównej kropki zapewnia, że helper nadal będzie mógł uzyskać dostęp do .Values i .Release.

{{ include "mychart.labels" $ }}

Szybki test

Znajdują się Państwo wewnątrz pętli range, w której kropka została ponownie powiązana z elementem listy.

Podsumowanie: pliki i kontekst główny

Poznali Państwo zasadę, że kropka jest kontekstem głównym, $ zawsze pozwala do niego dotrzeć, a .Files oraz .Template umożliwiają osadzanie dołączonych plików i odnajdywanie bieżącego szablonu.

Często zadawane pytania

Czy lekcja „Files, Template i kontekst główny” jest bezpłatna?

Tak — pełny tekst „Files, Template i kontekst główny” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „Files, Template i kontekst główny”?

Dostęp do dołączonych plików i zakresu kropki. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Files, Template i kontekst główny”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Obiekt Values i dostęp zagnieżdżony
  2. Metadane release przez .Release
  3. Obiekty Chart i Capabilities
  4. Files, Template i kontekst główny
← Powrót do DevOps Bootcamp