es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Mejores prácticas para definir el fqin en una plantilla Helm.

Me gustaría tener un pipeline de CI para construir una imagen y un Helm chart. Parte de eso, por supuesto, es establecer el FQIN del Helm chart antes de publicarlo.

Hay muchos ejemplos de cómo hacerlo durante la instalación, pero no durante el empaquetado. Me sorprendió que no pude encontrar ejemplos de este caso de uso común en https://helm.sh. La edición manual del archivo de valores del chart no es una opción porque es un pipeline de CI.

¿Cuál es la mejor práctica para hacerlo sin introducir herramientas de CICD complejas?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para evitar la necesidad de herramientas CICD complejas, una solución podría ser utilizar un script bash que modifique el archivo values.yaml del gráfico Helm antes de empaquetarlo. Este script se puede agregar al pipeline de CI después de que se haya construido la imagen, asegurando que el FQIN se establezca correctamente antes de que el gráfico se empaquete.

    El script puede utilizar el comando sed para reemplazar el marcador de posición del FQIN en el archivo values.yaml por el FQIN real de la imagen que acaba de ser construida. Por ejemplo:

    #!/bin/bash
    
    # Obtener el FQIN de la imagen construida de la variable de entorno
    FQIN=${DOCKER_REGISTRY}/${DOCKER_REPO}:${BUILD_NUMBER}
    
    # Reemplazar el marcador de posición en el archivo values.yaml con el FQIN
    sed -i "s|{{FQIN}}|${FQIN}|g" values.yaml
    
    # Empaquetar el gráfico
    helm package .
    

    Este script se puede agregar al pipeline de CI en el paso correspondiente después de construir la imagen. El gráfico de Helm resultante tendrá el FQIN correcto y se puede publicar en su repositorio de Helm como de costumbre.

Comments are closed.