Criar repositórios do GitLab

O Cloud Build permite criar gatilhos para o build Repositórios hospedados no GitLab (em inglês), permitindo que você execute builds em resposta a eventos, como solicitações de envio de commit ou mesclagem associadas ao seu repositório do GitLab.

Esta página explica como ativar a funcionalidade de gatilho em uma instância do GitLab. Saiba mais sobre os gatilhos do Cloud Build e os repositórios do Cloud Build.

Antes de começar

  • Enable the Cloud Build and Secret Manager APIs.

    Enable the APIs

Como criar um gatilho do GitLab

Console

Para criar um gatilho do GitLab usando o console do Google Cloud:

  1. Acesse a página Gatilhos:

    Abrir a página Acionadores

  2. Selecione seu projeto do Google Cloud na parte de cima da página e clique em Abrir.

  3. Clique em Criar gatilho.

  4. Preencha as configurações de gatilho a seguir:

    • Nome: nome do gatilho.

    • Região: selecione a região do gatilho.

      • Se o arquivo de configuração do build associado ao gatilho especificar um pool privado, o Cloud Build usa o pool para executar seu build. Nesse caso, a região especificada no gatilho precisa corresponder à região em que você criou o pool privado.
      • Se o arquivo de configuração do build associado ao gatilho não especifica um pool privado, O Cloud Build usa a configuração pool para executar seu build na mesma região como gatilho.
    • Descrição (opcional): uma descrição do gatilho.

    • Evento: selecione o evento de repositório para invocar seu gatilho.

      • Enviar para uma ramificação: defina o gatilho para iniciar um build em confirmações de uma ramificação específica.

      • Enviar nova tag por push: configure o gatilho para iniciar um build em confirmações que contenham uma tag específica.

      • Solicitação de envio: define o gatilho para iniciar uma compilação após commits para um solicitação de mesclagem.

    • Origem: selecione 2ª geração como sua origem.

      • Repositório: na lista de repositórios disponíveis, selecione o repositório que você quer. Para conectar um novo repositório, consulte Conectar-se a um repositório do GitLab.

      • Ramificação ou Tag: especifique uma expressão regular correspondente ao valor da ramificação ou da tag. Para ver informações sobre a sintaxe aceitável de expressões regulares, consulte Sintaxe de RE2 (em inglês).

      • Controle de comentários: se você selecionou Solicitação de envio como seu Evento, escolha uma das seguintes opções para controla se uma versão será executada automaticamente pelo gatilho:

        • Obrigatório, exceto para proprietários e colaboradores: quando uma mesclagem for criada ou atualizada por um proprietário ou colaborador do repositório, builds serão executados automaticamente pelo gatilho. Se um usuário externo colaborador inicia a ação, os builds serão executados somente após um proprietário ou colaborador comenta /gcbrun na solicitação de mesclagem.

        • Obrigatório: quando uma solicitação de mesclagem é criada ou atualizada por qualquer colaborador, os builds só são executados depois que um proprietário ou colaborador comenta /gcbrun na solicitação de mesclagem. Os builds são executados sempre que uma mudança é feita em uma solicitação de mesclagem.

        • Não obrigatório: quando uma solicitação de mesclagem é criada ou atualizada por qualquer colaborador, os builds serão executados automaticamente por gatilhos.

    • Configuração: selecione o arquivo de configuração do build localizado no seu repositório ou configure o build inline no gatilho.

    • Type: selecione o tipo de configuração a ser usado para o build.

      • Arquivo de configuração do Cloud Build (yaml ou json): use um arquivo de configuração do build na sua configuração.
      • Dockerfile: use um Dockerfile para sua configuração.
    • Local: especifique o local de configuração.

      • Repositório: se o arquivo de configuração estiver no repositório, forneça o local do arquivo de configuração do build ou do diretório Dockerfile e um nome para a imagem resultante. Se sua configuração for um Dockerfile, você poderá fornecer um tempo limite para a criação. Depois de fornecer o Dockerfile e o nome da imagem, você verá uma visualização do comando docker build que sua o build executará.

      • Inline: se você selecionou o arquivo de configuração do Cloud Build (yaml ou json) como opção de configuração, pode especificar a configuração de compilação in-line. Clique em Abrir editor para gravar seu arquivo de configuração de build no Console do Google Cloud usando sintaxe YAML ou JSON. Clique em Concluído para salvar a configuração da compilação.

  5. Clique em Criar para criar seu gatilho do GitLab.

gcloud

Para criar gatilhos do GitLab usando comandos gcloud, execute o seguinte 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

Em que:

  • TRIGGER_NAME é o nome do gatilho.
  • PROJECT_ID é o ID do projeto no Google Cloud.
  • REGION é a região do seu gatilho.
  • CONNECTION_NAME é o nome da sua conexão do GitLab.
  • REPO_NAME é o nome do repositório.
  • BRANCH_PATTERN é o nome da ramificação no seu repositório para invocar o build.
  • TAG_PATTERN é o nome da tag no repositório para invocar o build.
  • BUILD_CONFIG_FILE é o caminho para seu arquivo de configuração da compilação.

Compartilhamento de dados

Os dados enviados do Cloud Build para o GitLab ajudam a identificar gatilhos por nome e conferir os resultados da versão nos repositórios do GitLab.

Os dados a seguir são compartilhados entre o Cloud Build e seu host do GitLab:

  • ID do projeto do Google Cloud
  • Nome do gatilho

A seguir