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 del activador en un Instancia de GitLab. Obtén más información sobre los activadores de Cloud Build y los repositorios de Cloud Build.

Antes de comenzar

  • Habilita las API de Cloud Build and Secret Manager.

    Habilita las API

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 para ejecutar tu compilación. En este caso, la región que especifiques en el activador debe coincidir con la región en la que creaste el grupo privado.
      • Si el archivo de configuración de compilación asociado con el activador no especifica un grupo privado, Cloud Build usa la configuración para ejecutar tu compilación en la misma región como detonante.
    • 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 Evento, elige una de las siguientes opciones para controlar si el activador ejecutará automáticamente una compilación:

        • Obligatorio excepto para los propietarios y colaboradores: Cuando se realiza una combinación una solicitud la crea o actualiza un propietario o colaborador del repositorio, el activador ejecutará las compilaciones automáticamente. Si un proveedor de el colaborador inicia la acción, las compilaciones solo se ejecutarán después 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. De manera opcional, puedes proporcionar un tiempo de espera para tu compilación. Cuando hayas proporcionado 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 Open Editor para escribir tu archivo de configuración de compilación en la consola de Google Cloud con sintaxis YAML o JSON. Haz clic en Listo para guardar la configuración de tu compilación.

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

gcloud

Para crear activadores de GitLab con comandos de gcloud, ejecuta lo siguiente: :

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 del 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?