Cloud Build te permite crear activadores para compilar desde 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.
- Sigue las instrucciones para conectar un host de GitLab.
- Sigue las instrucciones para conectar un repositorio de GitLab.
Crea un activador de GitLab
Console
Para crear un activador de GitLab con la consola de Google Cloud, sigue estos pasos:
Abrir la página Activadores:
Selecciona tu Google Cloud proyecto en la parte superior de la página y haz clic en Abrir.
Haz clic en Crear activador.
Ingresa las siguientes opciones de configuración del activador:
Nombre: un nombre para tu activador
Región: Selecciona la región para tu 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 el 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 compilaciones a partir de confirmaciones de solicitud de combinación.
Fuente: Selecciona 2ª gen. como tu fuente.
Repositorio: En la lista de repositorios disponibles, selecciona el que deseas. Para conectar un repositorio nuevo, consulta Cómo conectarse 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 colaborador externo inicia la acción, las compilaciones solo se ejecutarán después de que el propietario o colaborador comente
/gcbrun
en la solicitud de combinación.Obligatorio: Cuando cualquier colaborador cree o actualice una solicitud de combinación, las compilaciones solo se ejecutarán después de que el propietario o el colaborador comente
/gcbrun
en la solicitud de combinación. Las compilaciones se ejecutan cada vez que se realiza un cambio en una solicitud de combinación.No obligatorio: Cuando cualquier colaborador crea o actualiza una solicitud de combinación, las compilaciones se ejecutan de forma automática con activadores.
Configuración: Selecciona el archivo de configuración de compilación ubicado en tu repositorio o configura tu compilación intercalada en el activador.
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 tu archivo de configuración se encuentra en tu repositorio, proporciona la ubicación de tu archivo de configuración de compilación o el directorio
Dockerfile
y un nombre para la imagen resultante. Si tu configuración esDockerfile
, puedes proporcionar un tiempo de espera para la compilación de forma opcional. Cuando proporciones elDockerfile
y el nombre de la imagen, verás una vista previa del comandodocker 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.
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 el Google Cloud ID de tu proyecto.
- 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 que se envían a GitLab desde Cloud Build te ayudan a identificar los activadores por nombre y ver los resultados de la compilación en tus repositorios de GitLab.
Actualmente, los siguientes datos se comparten entre Cloud Build y tu host de GitLab:
- ID del proyecto deGoogle Cloud
- Nombre del activador
¿Qué sigue?
- Obtén más información para administrar activadores de compilación.