tpl: renderowanie ciągów z wartości
Obliczanie wyrażeń szablonów przechowywanych w wartościach.
tpl: renderowanie ciągów z wartości to bezpłatna lekcja Helm Academy na CoddyKit. To lekcja 2 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 Helm Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Helm Academy zawiera 4 lekcji w sumie.
Szablony wewnątrz values
Czasami sama wartość w pliku values.yaml zawiera składnię szablonu. Domyślnie Helm traktuje ją jak zwykły ciąg znaków i nigdy jej nie interpretuje.
Poznaj funkcję tpl
Funkcja tpl przyjmuje ciąg znaków i kontekst, a następnie renderuje ten ciąg jako szablon Go dokładnie w miejscu wywołania.
{{ tpl .Values.greeting . }}Potrzebuje kontekstu
Drugi argument funkcji tpl określa zakres używany podczas renderowania. Przekazanie głównego kontekstu dot pozwala ciągowi uzyskać dostęp do Values i Release.
{{ tpl "Hello {{ .Release.Name }}" . }}Wartość z szablonem
Użytkownik może teraz przechowywać w values dynamiczny ciąg znaków, na przykład nazwę hosta zbudowaną na podstawie nazwy wydania, i rozwijać go podczas renderowania.
host: "{{ .Release.Name }}.example.com"Renderowanie tej wartości
W szablonie przekaż to pole przez tpl wraz z głównym kontekstem, aby zamienić zapisany symbol zastępczy na rzeczywistą wartość.
host: {{ tpl .Values.host . | quote }}Dlaczego nie wystarczy odwołanie
Bezpośrednie odwołanie wyświetla surowe nawiasy klamrowe jako tekst. Tylko tpl faktycznie interpretuje osadzone dyrektywy w zapisanym ciągu znaków.
Renderowanie plików
Może Pan/Pani również przekazywać zawartość plików do tpl, dzięki czemu dołączony plik konfiguracyjny może zawierać symbole zastępcze zależne od wydania.
{{ tpl (.Files.Get "config.tpl") . }}Przekazywanie niestandardowego zakresu
Kontekst nie musi być obiektem głównym. Można przekazać dowolny dict, aby renderowany ciąg znaków widział dokładnie wybrane zmienne.
{{ tpl .Values.msg (dict "name" "api") }}Praktyczny przypadek użycia
Charty często pozwalają w ten sposób tworzyć szablony hostów ingress lub adnotacji, przechowując elastyczną konfigurację w values zamiast w szablonach.
Uwaga na błędy
Jeśli zapisany ciąg znaków zawiera literówkę, tpl zakończy działanie błędem podczas renderowania, dlatego po dodaniu wartości zawierających szablony należy wykonać helm template.
Łączenie z quote
Ponieważ host utworzony za pomocą szablonu może zawierać kropki lub dwukropki, należy przekazać wynik tpl do quote, aby końcowa wartość YAML pozostała bezpiecznym ciągiem znaków.
host: {{ tpl .Values.host . | quote }}Szybkie sprawdzenie
Szybkie sprawdzenie działania tpl.
Podsumowanie
Dowiedział się Pan/Dowiedziała się Pani, że tpl interpretuje ciągi szablonów przechowywane w wartościach lub plikach, korzystając z przekazanego kontekstu, takiego jak obiekt główny. 🎉
Często zadawane pytania
Czy lekcja „tpl: renderowanie ciągów z wartości” jest bezpłatna?
Tak — pełny tekst „tpl: renderowanie ciągów z wartości” 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 Helm Academy, przejdź na CoddyKit PRO. Kurs Helm Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „tpl: renderowanie ciągów z wartości”?
Obliczanie wyrażeń szablonów przechowywanych w wartościach. Ćwiczysz Helm Academy 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ąć Helm Academy?
Nie wymagamy żadnego doświadczenia. Helm Academy 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 2 z 4.
Ile czasu zajmuje lekcja „tpl: renderowanie ciągów z wartości”?
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 Helm Academy?
Tak. Każda lekcja Helm Academy 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
- Głębokie scalanie za pomocą mergeOverwrite i dict
- tpl: renderowanie ciągów z wartości
- Iterowanie po plikach za pomocą range i .Files.Glob
- fail i niestandardowe mechanizmy walidacji