0Pricing
Helm Academy · Lección

fail y validaciones personalizadas

Detenga el renderizado con errores claros y accionables.

fail y validaciones personalizadas es una lección gratuita de Helm Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Helm Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Helm Academy incluye 4 lecciones en total.

Validar entradas incorrectas

Los charts deben rechazar pronto las configuraciones sin sentido. Un buen template puede detener el renderizado e indicar al usuario exactamente qué ha ocurrido.

Detener el renderizado con fail

La función fail detiene inmediatamente el renderizado del template y muestra como error el mensaje que usted le proporcione.

{{ fail "service.port must be set" }}

Validar con un if

Rodee fail con un if para que solo se active cuando falte un valor o no sea válido, sin afectar a las instalaciones válidas.

{{ if not .Values.image }}{{ fail "image is required" }}{{ end }}

required para valores individuales

Para un único valor obligatorio, required es más sencillo: devuelve el valor o falla con su mensaje cuando está vacío.

{{ required "image.tag is required" .Values.image.tag }}

fail frente a required

Use required para exigir un único valor en línea y fail cuando la comprobación abarque varias condiciones o necesite lógica personalizada.

Validar un enum

Puede comprobar que un valor pertenezca a un conjunto permitido y mostrar un error claro cuando el usuario elija algo no admitido.

{{ if not (has .Values.tier (list "free" "pro")) }}{{ fail "tier must be free or pro" }}{{ end }}

Mensajes útiles

Redacte el mensaje de error como una indicación: mencione el valor y la solución para que el usuario no tenga que adivinar por qué la instalación se detuvo.

Comprobar combinaciones

Algunas reglas implican dos campos. Una validación puede fallar cuando una funcionalidad activada no tiene el valor complementario del que depende.

{{ if and .Values.tls.enabled (not .Values.tls.secret) }}{{ fail "tls.secret needed when tls.enabled" }}{{ end }}

Centralizar las validaciones

Colocar la validación en un template con nombre dentro de _helpers.tpl mantiene las comprobaciones en un solo lugar y fuera de cada archivo de recursos.

{{- include "mychart.validate" . -}}

Probar las validaciones

Ejecute helm template con valores incorrectos para confirmar que cada validación se activa con un mensaje claro antes de que algo llegue al clúster.

También comprobar el esquema

Para las reglas de tipos y rangos, un archivo values.schema.json complementa a fail al rechazar las entradas incorrectas antes de que se ejecute cualquier template.

Comprobación rápida

Comprobación rápida de los helpers de validación.

Resumen

Ha aprendido a detener pronto las instalaciones incorrectas: fail para validaciones personalizadas con varias condiciones y required para valores individuales obligatorios. 🎉

Preguntas frecuentes

¿La lección «fail y validaciones personalizadas» es gratis?

Sí — el texto completo de «fail y validaciones personalizadas» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Helm Academy, actualiza a CoddyKit PRO. El curso de Helm Academy incluye 4 lecciones en total.

¿Qué aprenderé en «fail y validaciones personalizadas»?

Detenga el renderizado con errores claros y accionables. Practicas Helm Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Helm Academy?

No se requiere experiencia previa. Helm Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «fail y validaciones personalizadas»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Helm Academy?

Sí. Cada lección de Helm Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fusión profunda con mergeOverwrite y dict
  2. tpl: renderizar cadenas a partir de valores
  3. Recorrer archivos con range sobre .Files.Glob
  4. fail y validaciones personalizadas
← Volver a Helm Academy