O Cloud Build permite criar gatilhos para o build Repositórios hospedados no GitLab Enterprise Edition (em inglês), permitindo que você execute builds em resposta a eventos, como solicitações de commit ou de mesclagem associadas ao seu repositório do GitLab Enterprise Edition.
Esta página explica como ativar a funcionalidade de gatilho em uma instância do GitLab Enterprise Edition. 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.
- Siga as instruções para conectar um host do GitLab Enterprise Edition.
- Siga as instruções para conectar um repositório do GitLab Enterprise Edition.
Criar um gatilho do GitLab Enterprise Edition
Console
Para criar um gatilho do GitLab Enterprise Edition usando o console do Google Cloud:
Acesse a página Gatilhos:
Selecione o projeto do Google Cloud na parte de cima da página e clique em Abrir.
Clique em Criar gatilho.
Preencha as configurações de gatilho a seguir:
Nome: nome do gatilho.
Região: selecione a região do acionador.
- Se o arquivo de configuração do build associado ao acionador especificar um pool particular, o Cloud Build vai usar o pool particular para executar o build. Nesse caso, a região especificada no acionador precisa corresponder à região em que você criou o pool particular.
- Se o arquivo de configuração do build associado ao gatilho não especificar um pool particular, o Cloud Build vai usar o pool padrão para executar o build na mesma região do 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: defina seu gatilho para iniciar uma compilação. em commits para uma 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 Enterprise Edition.
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 controlar se um build será executado 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 colaborador externo iniciar a ação, os builds só serão executados depois que um proprietário ou colaborador comentar
/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 em seu repositório ou configure seu build in-line no o 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 umDockerfile
, você poderá fornecer um tempo limite para a criação. Depois de fornecer oDockerfile
e o nome da imagem, você verá uma visualização do comandodocker 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 o arquivo de configuração do build no Console do Google Cloud usando a sintaxe YAML ou JSON. Clique em Concluído para salvar a configuração da compilação.
Clique em Criar para criar o gatilho do GitLab Enterprise Edition.
gcloud
Para criar gatilhos do GitLab Enterprise Edition 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 Enterprise Edition.
- 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 Enterprise Edition ajudam a identificar gatilhos por nome e conferir os resultados da versão nos repositórios do GitLab Enterprise Edition.
Os dados a seguir são compartilhados entre o Cloud Build e o host do GitLab Enterprise Edition:
- Código do projeto do Cloud
- Nome do gatilho
A seguir
- Saiba como gerenciar gatilhos de build.
- Saiba como criar repositórios do GitLab Enterprise Edition em uma rede privada.
- Saiba como realizar implantações azul-verde no Compute Engine.