0Pricing
DevOps Bootcamp · Lekcja

Bloki warunkowe z if i else

Renderowanie zasobów tylko po ich skonfigurowaniu.

Bloki warunkowe z if i else to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 1 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.

Renderuj tylko wtedy, gdy trzeba

Czasami zasób powinien pojawić się tylko wtedy, gdy użytkownik wyraźnie tego zażądał. Helm pozwala opakować ten YAML w warunek, aby renderować go na żądanie.

Instrukcja if

Blok if rozpoczyna się od {{ if SOMETHING }} i kończy za pomocą {{ end }}. Wszystko pomiędzy nimi jest renderowane tylko wtedy, gdy warunek jest prawdziwy.

{{ if .Values.ingress.enabled }}
# ingress yaml here
{{ end }}

Sterowanie za pomocą values

Warunek zwykle zależy od wartości ustawianej przez użytkownika. Ustawienie ingress.enabled na true w values.yaml sprawia, że opakowany manifest nagle się pojawia.

ingress:
  enabled: true

Zawsze zamykaj za pomocą end

Każda instrukcja if musi mieć odpowiadające jej {{ end }}. Jeśli o nim Państwo zapomną, Helm zgłosi błąd niezakończonego bloku podczas renderowania chartu.

Dodawanie else

Potrzebują Państwo wartości zastępczej? Należy dodać gałąź {{ else }}. Helm renderuje pierwszy blok, gdy warunek jest prawdziwy, a w przeciwnym razie renderuje zamiast niego blok else.

{{ if .Values.tls }}
protocol: HTTPS
{{ else }}
protocol: HTTP
{{ end }}

Łączenie za pomocą else if

W przypadku kilku wariantów należy łączyć warunki za pomocą {{ else if }}. Helm sprawdza je po kolei i renderuje pierwszą gałąź, której warunek jest prawdziwy.

{{ if eq .Values.tier "gold" }}
replicas: 5
{{ else if eq .Values.tier "silver" }}
replicas: 3
{{ else }}
replicas: 1
{{ end }}

Co jest uznawane za true

Instrukcja if jest prawdziwa, chyba że wartość jest pusta: false, zero, pusty ciąg znaków lub pusta lista są w warunku traktowane jako false.

Zabezpieczanie opcjonalnych pól

Typowy wzorzec opakowuje jedno opcjonalne pole, a nie cały zasób. W tym przypadku adnotacja jest renderowana tylko wtedy, gdy użytkownik poda dla niej wartość.

{{ if .Values.email }}
contact: {{ .Values.email }}
{{ end }}

Uważaj na puste wiersze

Blok if pozostawia puste wiersze w miejscu, w którym znajdowała się instrukcja. Te białe znaki mogą zepsuć YAML, dlatego wkrótce nauczą się Państwo je usuwać. 🧹

Podgląd gałęzi

Renderuj chart z różnymi wartościami i obserwuj, która gałąź zostaje wybrana. helm template wraz z --set pozwala sprawdzić każdy warunek, zanim cokolwiek zostanie wdrożone.

helm template ./mychart --set ingress.enabled=true

Ustawianie wartości domyślnej brakującej flagi

Jeśli użytkownik nigdy nie ustawi flagi, będzie ona odczytywana jako pusta, a instrukcja if pozostanie fałszywa. Dlatego w values.yaml charty zawierają rozsądną wartość default.

ingress:
  enabled: false

Szybkie sprawdzenie

W formularzu zapisują Państwo {{ if .Values.cache }}, ale chart nie daje się wyrenderować.

Podsumowanie

Mogą już Państwo warunkowo renderować YAML za pomocą if, dodawać gałęzie else i else if oraz pamiętać o zamykającym {{ end }}. Renderowanie warunkowe odblokowane! 🎯

Często zadawane pytania

Czy lekcja „Bloki warunkowe z if i else” jest bezpłatna?

Tak — pełny tekst „Bloki warunkowe z if i else” 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 „Bloki warunkowe z if i else”?

Renderowanie zasobów tylko po ich skonfigurowaniu. Ć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 1 z 4.

Ile czasu zajmuje lekcja „Bloki warunkowe z if i else”?

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. Bloki warunkowe z if i else
  2. Prawdziwość i operatory w warunkach
  3. Iterowanie po listach i mapach za pomocą range
  4. Ustalanie zakresu bloku za pomocą with
← Powrót do DevOps Bootcamp