Villkorsblock med if och else
Rendera resurser endast när de har konfigurerats
Villkorsblock med if och else är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Rendera endast vid behov
Ibland ska en resurs endast visas om användaren har begärt den. Helm låter Er omsluta YAML-koden i en villkorssats så att den renderas vid behov.
Åtgärden if
Ett if-block börjar med {{ if SOMETHING }} och avslutas med {{ end }}. Allt däremellan renderas endast när villkoret är sant.
{{ if .Values.ingress.enabled }}
# ingress yaml here
{{ end }}Styrs av values
Villkoret är vanligtvis ett värde som användaren anger. Ändra ingress.enabled till true i values.yaml, så visas manifestet i blocket plötsligt.
ingress:
enabled: trueAvsluta alltid med end
Varje if måste paras ihop med ett {{ end }}. Om det saknas ger Helm ett fel om ett oavslutat block när chartet ska renderas.
Lägg till else
Behöver Ni ett reservalternativ? Lägg till en gren med {{ else }}. Helm renderar det första blocket när villkoret är sant och annars else-blocket.
{{ if .Values.tls }}
protocol: HTTPS
{{ else }}
protocol: HTTP
{{ end }}Kedja med else if
För flera fall kan Ni kedja villkor med {{ else if }}. Helm kontrollerar dem i ordning och renderar den första grenen vars villkor är sant.
{{ if eq .Values.tier "gold" }}
replicas: 5
{{ else if eq .Values.tier "silver" }}
replicas: 3
{{ else }}
replicas: 1
{{ end }}Vad räknas som sant
Ett if är sant om värdet inte är empty: false, noll, en tom sträng eller en tom lista tolkas alla som falska i ett villkor.
Skydda valfria fält
Ett vanligt mönster omsluter ett enda valfritt fält, inte en hel resurs. Här renderas annotationen endast när användaren anger ett värde för den.
{{ if .Values.email }}
contact: {{ .Values.email }}
{{ end }}Se upp med tomma rader
Ett if-block lämnar tomma rader där åtgärden tidigare stod. Dessa blanktecken kan förstöra YAML, så snart får Ni lära Er att ta bort dem. 🧹
Förhandsgranska grenarna
Rendera med olika values och se vilken gren som väljs. Med helm template och --set kan Ni bekräfta varje villkor innan Ni någonsin distribuerar chartet.
helm template ./mychart --set ingress.enabled=trueGe en saknad flagga ett standardvärde
Om användaren aldrig anger flaggan tolkas den som tom och Ert if förblir falskt. Därför levereras charts med ett rimligt default för den i values.yaml.
ingress:
enabled: falseSnabbkontroll
Ni skriver {{ if .Values.cache }}, men chartet kan inte renderas.
Sammanfattning
Nu kan Ni styra YAML med if, lägga till else- och else if-grenar och komma ihåg det avslutande {{ end }}. Villkorsstyrd rendering är på plats! 🎯
Lär dig DevOps-bootcamp med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 142
- Lektioner
- 568
Vanliga frågor
Är lektionen ”Villkorsblock med if och else” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Villkorsblock med if och else”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.
Vad lär jag mig i ”Villkorsblock med if och else”?
Rendera resurser endast när de har konfigurerats Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?
Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.
Hur lång tid tar lektionen ”Villkorsblock med if och else”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?
Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Villkorsblock med if och else
- Sanningsvärden och operatorer i villkor
- Iterera över listor och maps med range
- Begränsa ett block med with