Antes de começar
- Você precisa da função Owner ou Admin no Enclave.
- O Enclave lista os grupos do GitLab em que você tem a função Developer ou superior.
- Para adicionar o webhook, você precisa da função Maintainer em cada projeto ou da função Owner no grupo. Webhooks de grupo exigem o GitLab Premium ou Ultimate.
- No GitLab autogerenciado, o token de acesso precisa do escopo
apie da função Maintainer.
Conectar o GitLab
1
Abra as integrações
Abra Settings → Integrations em app.enclave.ai. Clique em Connect ao lado de GitLab.
2
Autorize o GitLab
Escolha GitLab.com, entre na sua conta do GitLab e autorize o aplicativo do Enclave.
O OAuth do GitLab concede ao Enclave o escopo
api. O GitLab não tem um escopo mais restrito que permita publicar comentários em MRs e gerenciar webhooks. O Enclave o usa para ler projetos e merge requests, publicar comentários em MRs e receber eventos de webhook.3
Adicione o webhook
O Enclave mostra uma Webhook URL e um Secret token. Copie os dois. O segredo é exibido apenas uma vez.No GitLab, abra seu projeto (ou grupo, no autogerenciado) e acesse Settings → Webhooks. Cole a URL e o token secreto, ative Push events e Merge request events e clique em Add webhook. Clique em Test para enviar uma entrega.A conexão fica pendente até que o primeiro evento chegue.
4
Escolha quais projetos recebem revisão de MRs
As revisões automáticas vêm ativadas por padrão em todos os projetos do GitLab. Para desativá-las em um projeto, use o botão PR Reviews dele em Coverage → Repositories. Consulte Análise de PRs e dependências.
Dicas
- Crie uma conta dedicada do GitLab para o Enclave, para que os comentários nos MRs sejam claramente atribuídos. No GitLab autogerenciado, o melhor é um token de conta de serviço e, em seguida, um token de acesso de grupo. Um token pessoal funciona, mas todos os comentários aparecem com o seu nome.
- Conecte todos os projetos de um sistema. O Enclave só encontra problemas entre serviços quando consegue ver tanto o serviço quanto as APIs que ele chama.
Solução de problemas
No GitLab autogerenciado, Validate & connect verifica primeiro sua URL e seu token:- Enclave requires GitLab 14 or newer: atualize sua instância.
- GitLab rejected the token ou The token must include the ‘api’ scope: emita um novo token com o escopo
api. - The token authenticated but cannot see any projects: primeiro, adicione o token a um grupo ou projeto.
- We refused to call that URL: o hostname foi resolvido para um endereço privado ou interno. O Enclave não se conecta a esses endereços.
- We could not reach your GitLab instance: verifique a URL e as regras do seu firewall.