Compila repositorios de GitLab

Cloud Build te permite crear activadores para compilar Repositorios alojados en GitLab, lo que te permite ejecutar compilaciones en respuesta a eventos como envíos de confirmación o solicitudes de combinación asociadas con tu repositorio de GitLab.

En esta página, se explica cómo puedes habilitar la funcionalidad de activadores en una instancia de GitLab. Obtén más información sobre los activadores de Cloud Build y los repositorios de Cloud Build.

Antes de comenzar

  • Enable the Cloud Build and Secret Manager APIs.

    Enable the APIs

Crea un activador de GitLab

Console

Para crear un activador de GitLab con la consola de Google Cloud, sigue estos pasos:

  1. Abrir la página Activadores:

    Abrir la página Activadores

  2. Selecciona tu proyecto de Google Cloud en la parte superior de la página y haz clic en Abrir.

  3. Haz clic en Crear activador.

  4. Ingresa las siguientes opciones de configuración del activador:

    • Nombre: un nombre para tu activador

    • Región: Selecciona la región para el activador.

      • Si el archivo de configuración de compilación asociado con el activador especifica un grupo privado, Cloud Build usa el grupo privado para ejecutar la compilación. En este caso, la región que especifiques en el activador debe coincidir con la región en la que creaste tu grupo privado.
      • Si el archivo de configuración de compilación asociado con el activador no especifica un grupo privado, Cloud Build usa el grupo predeterminado para ejecutar la compilación en la misma región que el activador.
    • Descripción (opcional): Una descripción para tu activador

    • Evento: Selecciona el evento de repositorio que invoca al activador.

      • Enviar a una rama: Configura el activador para que inicie compilaciones a partir de las confirmaciones en una rama en particular.

      • Enviar etiqueta nueva: Configura el activador para que inicie compilaciones a partir de las confirmaciones que contengan una etiqueta específica.

      • Solicitud de extracción: Configura el activador para que inicie una compilación a partir de las confirmaciones de un solicitud de combinación.

    • Fuente: Selecciona 2a gen. como la fuente.

      • Repositorio: En la lista de repositorios disponibles, selecciona el que deseas. Para conectar un repositorio nuevo, consulta Conéctate a un repositorio de GitLab.

      • Rama o Etiqueta: Especifica una expresión regular con la rama o el valor de la etiqueta que deben coincidir. Para obtener información acerca de la sintaxis de expresión regular aceptable, consulta Sintaxis RE2.

      • Control de comentarios: Si seleccionaste Solicitud de extracción como tu Evento, elige una de las siguientes opciones para controlar si el activador ejecutará una compilación de forma automática:

        • Obligatorio excepto para los propietarios y colaboradores: Cuando un propietario o colaborador del repositorio crea o actualiza una solicitud de combinación, el activador ejecuta las compilaciones de forma automática. Si un proveedor de Contributor inicia la acción, las compilaciones solo se ejecutan después de un propietario o colaborador comenta /gcbrun en la solicitud de combinación.

        • Obligatorio: Cuando cualquier persona crea o actualiza una solicitud de combinación Contributor, las compilaciones solo se ejecutarán después de que un propietario o el colaborador comenta /gcbrun sobre la solicitud de combinación. Compilaciones se ejecutan cada vez que se realiza un cambio en una solicitud de combinación.

        • No obligatorio: Si alguna de las empresas crea o actualiza una solicitud de combinación, colaborador, los activadores ejecutarán automáticamente las compilaciones.

    • Configuración: Selecciona el archivo de configuración de compilación ubicado en tu repositorio o configurar tu compilación intercalada en el desencadenante.

    • Tipo: Selecciona el tipo de configuración que usarás para la compilación.

      • Archivo de configuración de Cloud Build (YAML o JSON): Usa un archivo de configuración de compilación para la configuración.
      • Dockerfile: Usa Dockerfile para la configuración.
    • Ubicación: Especifica la ubicación de tu configuración.

      • Repositorio: Si el archivo de configuración se encuentra en tu repositorio, proporciona la ubicación de tu archivo de configuración de compilación o Dockerfile y un nombre para la imagen resultante. Si tu configuración es Dockerfile, puedes proporcionar un tiempo de espera para la compilación de forma opcional. Cuando proporciones el Dockerfile y el nombre de la imagen, verás una vista previa del comando docker build que ejecutará tu compilación.

      • En línea: Si seleccionaste Archivo de configuración de Cloud Build (YAML o JSON) como tu opción de configuración, puedes especificar tu configuración de la compilación de forma intercalada. Haz clic en Abrir editor para escribir tu archivo de configuración de compilación en la consola de Google Cloud con la sintaxis de YAML o JSON. Haz clic en Listo para guardar la configuración de tu compilación.

  5. Haz clic en Crear para crear el activador de GitLab.

gcloud

Para crear activadores de GitLab con los comandos de gcloud, ejecuta el siguiente comando:

gcloud builds triggers create gitlab \
  --name=TRIGGER_NAME \
  --repository=projects/PROJECT_ID/locations/REGION/connections/CONNECTION_NAME/repositories/REPO_NAME \
  --branch-pattern=BRANCH_PATTERN # or --tag-pattern=TAG_PATTERN \
  --build-config=BUILD_CONFIG_FILE \
  --region=REGION

Aquí:

  • TRIGGER_NAME es el nombre del activador.
  • PROJECT_ID es tu ID del proyecto de Cloud.
  • REGION es la región de tu activador.
  • CONNECTION_NAME es el nombre de tu conexión de GitLab.
  • REPO_NAME es el nombre de tu repositorio
  • BRANCH_PATTERN es el nombre de la rama en tu repositorio para invocar la compilación.
  • TAG_PATTERN es el nombre de la etiqueta en tu repositorio para invocar la compilación.
  • BUILD_CONFIG_FILE es la ruta de acceso al archivo de configuración de compilación.

Uso compartido de datos

Los datos enviados a GitLab desde Cloud Build te ayudan a identificar activadores por nombre y ver los resultados de compilación en tus repositorios de GitLab.

En este momento, los siguientes datos se comparten entre Cloud Build y tu host de GitLab:

  • ID del proyecto de Google Cloud
  • Nombre del activador

¿Qué sigue?