0Pricing
DevOps Bootcamp · Leçon

Délimiter un bloc avec with

Réduisez le point à un sous-arbre et évitez ses pièges.

Délimiter un bloc avec with est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.

Cessez de répéter les chemins longs

Écrire .Values.image.repository encore et encore devient fastidieux. L’action with réduit le point à un sous-arbre afin que vous puissiez écrire des chemins plus courts.

L’action with

Un bloc with s’ouvre avec {{ with SOMETHING }} et se ferme avec {{ end }}. À l’intérieur, le point est réinitialisé sur la valeur que vous avez transmise.

{{ with .Values.image }}
repository: {{ .repository }}
tag: {{ .tag }}
{{ end }}

Le point se déplace vers l’intérieur

Une fois à l’intérieur, .repository signifie .Values.image.repository. Le mot-clé with réaffecte le point au sous-arbre et raccourcit chaque chemin qui en dépend.

image:
  repository: nginx
  tag: "1.27"

Il sert aussi de garde

Si la valeur est vide ou absente, with ignore tout son bloc. Il réduit donc la portée du point tout en jouant simultanément le rôle d’un if. 🛡️

Ajouter une branche else

Comme if, with accepte une branche else. else s’exécute lorsque la valeur est vide, ce qui fournit une solution de repli claire pour une configuration facultative.

{{ with .Values.resources }}
resources:
{{ toYaml . | indent 2 }}
{{ else }}
# no resources set
{{ end }}

Le piège de la portée

Voici le piège : à l’intérieur de with, le point ne désigne plus la racine. Ainsi, .Release.Name ne fonctionne plus, car Release ne se trouve pas sous ce sous-arbre.

Remonter jusqu’à la racine avec $

Pour utiliser les valeurs racine à l’intérieur de with, préfixez-les avec $. Le dollar pointe toujours vers le contexte racine d’origine, quelle que soit la profondeur à laquelle vous vous trouvez.

{{ with .Values.image }}
name: {{ $.Release.Name }}
image: {{ .repository }}
{{ end }}

Garder les blocs courts

Comme with détourne le point, les grands blocs deviennent vite difficiles à comprendre. Gardez les sections with courtes afin qu’il reste évident vers quoi pointe le point.

with ou if

Utilisez if lorsque vous voulez seulement tester un indicateur, et with lorsque vous voulez aussi entrer dans cette valeur. with modifie le point ; if le laisse inchangé.

Prévisualiser la portée

Vous ne savez pas ce que contient le point ? Effectuez un rendu avec helm template et consultez la sortie, ou affichez la portée pendant le débogage d’un bloc with complexe.

helm template ./mychart

Imbriquer des blocs with

Vous pouvez imbriquer un with dans un autre pour aller plus en profondeur. Chaque niveau déplace le point d’un cran vers le bas ; gardez donc la trace de votre position.

{{ with .Values.image }}
{{ with .pullSecrets }}
# . is now pullSecrets
{{ end }}
{{ end }}

Vérification rapide

À l’intérieur d’un bloc {{ with .Values.image }}, vous essayez de lire .Release.Name, mais la valeur est vide.

Récapitulatif

Vous savez désormais définir la portée du point avec with, bénéficier d’une vérification automatique des valeurs vides, ajouter une solution de repli avec else et atteindre la racine avec $. Des modèles plus propres ! 🎯

Questions Fréquemment Posées

La leçon « Délimiter un bloc avec with » est-elle gratuite ?

Oui — le texte complet de « Délimiter un bloc avec with » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Délimiter un bloc avec with » ?

Réduisez le point à un sous-arbre et évitez ses pièges. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?

Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Délimiter un bloc avec with » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?

Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Blocs conditionnels avec if et else
  2. Valeur de vérité et opérateurs dans les conditions
  3. Parcourir les listes et les cartes avec range
  4. Délimiter un bloc avec with
← Retour à DevOps Bootcamp