View a markdown version of this page

Conectando GitLab - AWS DevOps Agente

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conectando GitLab

GitLab a integração permite que o AWS DevOps Agente monitore as implantações dos GitLab Pipelines para informar as investigações causais durante a resposta a incidentes. Essa integração segue um processo de duas etapas: registro em nível de conta GitLab, seguido pela conexão de projetos específicos a espaços de agentes individuais.

Registro GitLab (nível de conta)

GitLab é registrado no nível da AWS conta e compartilhado entre todos os espaços do agente nessa conta. Cada registro é vinculado a um GitLab usuário ou GitLab grupo.

Etapa 1: Navegue até os provedores de pipeline

  1. Faça login no AWS Management Console

  2. Navegue até o console do AWS DevOps agente

  3. Vá para a página Provedores de Capacidades (acessível pela navegação lateral)

  4. Encontre GitLab na seção Provedores disponíveis em Pipeline e escolha Registrar

Etapa 2: configurar a GitLab conexão

Na página GitLab de registro, configure o seguinte:

Tipo de conexão — Selecione se você está se conectando como pessoa ou grupo:

  • Pessoal (padrão) — Sua conta de GitLab usuário individual com nome de usuário e perfil

  • Grupo — Em GitLab, você usa grupos para gerenciar um ou mais projetos relacionados ao mesmo tempo

GitLab tipo de instância — Escolha a qual tipo de GitLab instância você está se conectando:

  • GitLab.com(padrão) — O GitLab serviço público

  • GitLab Self-Managed— Marque a caixa Usar endpoint GitLab auto-hospedado e forneça o URL para sua instância GitLab

Conectividade privada para GitLab Self-Managed

Conecte-se ao endpoint usando uma conexão privada — Se sua GitLab Self-Managed instância não estiver acessível pela Internet pública, selecione essa opção para que o AWS DevOps agente a alcance por meio de uma conexão privada com sua VPC. Crie a conexão privada antes de se registrar GitLab e selecione a conexão existente aqui. Para obter mais informações, consulte Conectando-se a ferramentas hospedadas de forma privada.

Token de acesso — Forneça um token de acesso GitLab pessoal:

  1. Em uma guia separada do navegador, faça login na sua GitLab conta

  2. Navegue até as configurações do usuário e selecione Tokens de acesso

  3. Crie um novo token de acesso pessoal com as seguintes permissões:

    • read_repository— Necessário para acessar o conteúdo do repositório

    • read_virtual_registry— Necessário para acessar as informações do registro virtual

    • read_registry— Necessário para acessar as informações do registro

    • api— Necessário para acesso à API de leitura e gravação

    • self_rotate- Necessário para rotação de tokens. No momento, esse recurso não é suportado pelo AWS DevOps Agente, mas será suportado posteriormente. Adicionar agora evita a necessidade de criar um novo token no futuro.

  4. Defina a expiração do token para um máximo de 365 dias a partir da data atual

  5. Copie o token gerado

  6. Retorne ao console do AWS DevOps agente

  7. Cole o token no campo “Token de acesso”

Etapa 3: Concluir o registro

(Opcional) Tags — Adicione AWS tags ao GitLab registro para fins organizacionais.

Escolha Avançar para revisar sua configuração e, em seguida, escolha Enviar para concluir o processo GitLab de registro. O sistema validará seu token de acesso e estabelecerá a conexão.

Conectando projetos a um Agent Space

Depois de se registrar GitLab no nível da conta, você pode conectar projetos específicos a espaços de agentes individuais:

  1. No console do AWS DevOps Agente, selecione seu Espaço do Agente

  2. Vá para a guia Capacidades

  3. Na seção Pipeline, escolha Adicionar

  4. GitLabSelecione na lista de fornecedores disponíveis

  5. Selecione o GitLab registro que contém os projetos que você deseja usar

  6. Selecione os GitLab projetos relevantes para o seu Agent Space

  7. Escolha Salvar

AWS DevOps O agente monitora esses projetos para implantações a partir de GitLab Pipelines para informar investigações causais. Um único Agent Space pode usar projetos de vários registros. Para adicionar projetos de outro registro, repita essas etapas.

Configurando a revisão de código e o teste automatizado

Quando você seleciona projetos na etapa de GitLab conexão, eles são automaticamente adicionados à seção Revisão de código e testes automatizados. Esta seção configura quais projetos acionam automaticamente um Revisões do código de prontidão de lançamento e recursos de teste automatizados.

A configuração de revisão de código e teste automatizado inclui:

  • Capacidades — Escolha recursos de análise de código e testes automatizados para cada projeto. A seção fornece duas configurações por projeto:

    • Análise automática de alterações por gatilho — Quando ativado para um projeto, o DevOps Agente executa automaticamente uma Revisões do código de prontidão de lançamento sempre que uma solicitação de mesclagem é aberta ou atualizada. As descobertas da revisão aparecem como comentários embutidos na solicitação de mesclagem. Isso é ativado por padrão para todos os projetos conectados.

    • Teste de verificação automatizado — Quando ativado para um projeto, o DevOps Agente cria, executa e testa suas alterações de código em um ambiente de verificação gerenciado durante as revisões de código. Isso fornece validação funcional além da análise estática. Para obter mais informações, consulte Teste de verificação automatizado. Isso é ativado por padrão para todos os projetos conectados.

  • Lista de projetos — Mostra todos os projetos que você selecionou durante a etapa de conexão. Use o campo de pesquisa para filtrar projetos por nome. Cada projeto tem caixas de seleção independentes para ambos os recursos.

  • Função de tempo de execução (opcional) — Escolha a função do IAM que o DevOps agente assume para executar recursos automatizados em seus projetos selecionados. Essa função é usada ao acessar os serviços internos necessários durante as compilações, como registros de pacotes privados e sistemas de armazenamento de artefatos. Recomendamos usar uma função diferente da sua função principal de agente.

Para configurar avaliações automatizadas:

  1. Depois de conectar seus projetos, navegue até a seção Revisão de código e testes automatizados nas configurações de GitLab integração.

  2. Para cada projeto, ative ou desative o recurso de revisão de alterações com acionamento automático, dependendo se você deseja revisões automáticas de solicitações de mesclagem.

  3. Para cada projeto, ative ou desative o recurso de teste de verificação automatizado, dependendo se você deseja testes de verificação automatizados em um ambiente de verificação gerenciado.

  4. Opcionalmente, selecione uma função do IAM no menu suspenso Função de tempo de execução que o DevOps agente assumirá ao executar recursos automatizados nos projetos selecionados.

  5. Escolha Salvar para aplicar sua configuração.

Depois de configurada, qualquer nova solicitação de mesclagem em um projeto com a revisão automática de alterações ativada acionará automaticamente uma revisão do código de prontidão para lançamento. Se o teste de verificação automatizado também estiver ativado, a análise incluirá a validação funcional em um ambiente de verificação. Para obter mais informações sobre revisões de código, consulteRevisões do código de prontidão de lançamento.

Configurações avançadas: filtros de gatilho

Por padrão, um projeto com a revisão automática de alterações ativada executa uma revisão do código de preparação para o lançamento em cada evento de solicitação de mesclagem aplicável, em qualquer ramificação de destino. Use as configurações avançadas para adicionar filtros de gatilho que controlam exatamente quando as revisões automatizadas são executadas para cada projeto.

Cada filtro é um grupo de filtros que combina duas condições:

  • Ramificações de destino (obrigatório) — Um ou mais nomes ou padrões de ramificação, inseridos como expressões regulares (por exemplo, main ourelease/.*). A revisão é acionada somente quando a ramificação de destino da solicitação de mesclagem corresponde a um desses padrões.

  • Eventos de acionamento (opcional) — Os eventos de solicitação de mesclagem que acionam uma revisão: solicitação de mesclagem pronta para revisão ou Solicitação de mesclagem redigida. Deixe isso em branco para corresponder a todos os eventos aplicáveis.

Em um grupo de filtros, todas as condições devem corresponder a (AND). Você pode adicionar vários grupos de filtros e uma revisão será acionada quando qualquer grupo corresponder (OR).

Para configurar filtros de gatilho:

  1. Abra a seção Configurações avançadas no fluxo de conexão. (Para alterar os filtros em uma conexão existente, selecione a conexão na seção Pipeline, escolha Editar e abra Configurações avançadas.)

  2. Encontre o projeto que você deseja configurar e selecione a guia Revisão de alterações.

  3. Escolha Adicionar grupo de filtros e defina as condições do grupo:

    • Em Ramificações de destino, insira um nome ou padrão de ramificação e pressione Enter ou escolha Adicionar. Repita para adicionar mais padrões.

    • (Opcional) Em Ativar eventos, selecione Solicitação de mesclagem pronta para revisão, Solicitação de mesclagem redigida ou ambos. Deixe-o vazio para combinar todos os eventos.

  4. (Opcional) Escolha Adicionar grupo de filtros novamente para expressar condições alternativas.

  5. Escolha Salvar para aplicar sua configuração.

Você pode definir até 5 grupos de filtros por projeto, com até 20 padrões por grupo. Cada padrão deve ser uma expressão regular válida de até 256 caracteres. Se você não adicionar nenhum grupo de filtros, as avaliações serão acionadas em todos os eventos aplicáveis a todas as filiais de destino.

Solução de problemas

Para erros de DNS, acessibilidade da rede, grupo de segurança ou TLS quando você usa GitLab Self-Managed com uma conexão privada, consulte. Solução de problemas de conexões privadas

Alguns projetos não aparecem na lista de projetos

Sintomas

Você pode se registrar GitLab com sucesso, mas um ou mais projetos que você espera conectar não aparecem na lista de projetos.

Causa

Para uma conexão pessoal, o AWS DevOps Agente lista projetos em que o usuário do token de acesso é membro. Um projeto não aparece se esse usuário não for membro, mesmo que o usuário possa visualizar o projeto por meio de outro caminho de GitLab acesso.

Resolução

  • Confirme se o usuário do token de acesso é membro de cada projeto que você deseja conectar.

  • Confirme se o token não expirou e inclui os escopos listados na Etapa 2: Configurar GitLab a conexão.

  • Depois de alterar a associação ao projeto ou substituir o token, atualize a lista de projetos.

Um GitLab projeto não pode ser conectado

Sintomas

A conexão de um projeto falha com GitLab project '<path>' (ID: <id>) is not accessible to this GitLab token. ou GitLab is currently throttling requests (HTTP 429). Please retry the association later.

Causa

O token não pode ler o projeto selecionado ou GitLab está limitando temporariamente as solicitações de validação do projeto.

Resolução

  • Confirme se o token é válido e se seu usuário ou grupo pode acessar o projeto selecionado.

  • Confirme se o token inclui os escopos necessários da Etapa 2: Configurar a GitLab conexão.

  • Se GitLab retornar HTTP 429, aguarde e tente novamente a associação.

Gerenciando GitLab conexões

  • Atualizando o token de acesso — Se seu token de acesso expirar ou precisar ser atualizado, você poderá alterná-lo sem cancelar o registro. Na página Provedores de Capacidade, selecione seu GitLab registro, escolha Atualizar no menu Ações e insira o novo token. Suas associações do Agent Space e as conexões do projeto são preservadas.

  • Visualizando projetos conectados — No console do AWS DevOps Agente, selecione seu Espaço do Agente e vá até a guia Capacidades para visualizar os projetos conectados na seção Pipeline.

  • Removendo GitLab conexão — Para desconectar GitLab projetos de um Agent Space, selecione a conexão na seção Pipeline e escolha Remover. Para remover completamente o GitLab registro, remova-o primeiro de todos os Espaços do Agente e, em seguida, exclua o registro no nível da conta.