Verificando autenticación…

Saltar al contenido principal

Imágenes Docker

  1. Imágenes para pipelines:
  2. Imágenes base para aplicaciones
  3. Destino de las imágenes de Aplicativos

Características de las imágenes

Existen 2 tipos de imágenes definidas al momento:

Runtime

Imágenes base para aplicaciones, contienen las herramientas necesarias para ejecutar aplicaciones en distintos lenguajes de programación. Son mantenidas y actualizadas periódicamente por el Plano de Seguridad de ANDES.

  • Compilación via krane/erb.
  • Versionado autonumérico incremental
  • Variaciones:
    • Redhat UBI 8 y 9.
    • Alpine 3.21
tip

La definición de cada imagen se encuentra en el repositorio: https://gitlab.com/latamairlines/tech/infrastructure/delivery-and-devsecops/pipelines/bdi

Pipeline

Imágenes utilizadas en los pipelines de Gitlab CI/CD, contienen herramientas necesarias para la construcción, prueba y despliegue de aplicaciones. Son mantenidas y actualizadas periódicamente por el Plano de Delivery de ANDES.

  • Compilación estática usando docker build args.
  • Versionado autonumérico incremental.
  • Variaciones:
    • Alpine 3.21

Imágenes construidas en Gitlab para gitlab-ci

  • gcloud-sdk
    • Imagen basada en la imagen oficial del SDK de Google Cloud
    • Incluye herramientas para facilitar la operación de los jobs
      • git
      • yq
      • jq
      • curl
      • wget
      • helm
      • kubectl
  • Shopify-krane
  • eclipse-temurin 8/11/17/21/23
  • nodejs 18/20/22/23/24
  • SonarQube
  • K6 (nodejs 20)
tip

La definición de cada imagen se encuentra en el repositorio: https://gitlab.com/latamairlines/config/devops/docker/pipeline-images

Pipeline de Pipelines (PoP)

El Pipeline de Pipelines (PoP) es un sistema automatizado que valida y prueba los cambios realizados en los componentes y templates del framework-2 antes de que sean liberados para uso general, ejecutando la nueva versión del pipeline en otros pipelines.

  • Implementamos los cambios usando Feature Branch1.

  • Cada cambio nace en un branch basado en jira[ticket-key]-[title-slug]

  • Los cambios son revisados gatillando pipelines en otros proyectos.

Footnotes

  1. Feature Branch (rama de características) es una copia aislada del código principal de un proyecto (rama main/master) que se crea para desarrollar una funcionalidad específica, corregir un error o experimentar, sin afectar el código estable del equipo hasta que la tarea esté completa y revisada, facilitando el desarrollo paralelo y la colaboración segura.