View a markdown version of this page

Conectando GitHub - 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 GitHub

GitHub a integração permite que o AWS DevOps Agente acesse repositórios de código e receba eventos de implantação durante investigações de incidentes. Essa integração segue um processo de duas etapas: registro em nível de conta GitHub, seguido pela conexão de repositórios específicos a Agent Spaces individuais.

AWS DevOps O agente suporta GitHub.com instâncias (SaaS) e GitHub Enterprise Server (auto-hospedadas).

Pré-requisitos

Antes de se conectar GitHub, verifique se você tem:

  • Acesso ao console de administração do AWS DevOps agente

  • Uma conta de GitHub usuário ou organização com permissões de administrador

  • Autorização para instalar GitHub aplicativos em sua conta ou organização

Para o GitHub Enterprise Server, você também precisa:

  • Uma instância do GitHub Enterprise Server (versão 3.x ou posterior) acessível por HTTPS

  • O URL HTTPS da sua instância do GitHub Enterprise Server (por exemplo,https://github.example.com)

  • (Opcional) Uma conexão privada, se sua instância do GitHub Enterprise Server não estiver acessível publicamente

Registro GitHub (nível da conta)

GitHub é registrado no nível da AWS conta e compartilhado entre todos os Agent Spaces dessa conta. Cada registro corresponde a um GitHub usuário, uma organização ou uma instância do GitHub Enterprise Server.

Etapa 1: Navegar até os fornecedores de funil

  1. Faça login no console AWS de gerenciamento

  2. Navegue até o console do AWS DevOps agente

  3. Vá para a guia Capacidades

  4. Na seção Pipeline, escolha Adicionar

  5. GitHubSelecione na lista de provedores disponíveis

Se GitHub ainda não tiver sido registrado, você será solicitado a registrá-lo primeiro.

Etapa 2: Escolha o tipo de conexão

Na tela “Registrar GitHub conta/organização”, selecione se você está se conectando como usuário ou organização:

  • Usuário — Sua GitHub conta pessoal com nome de usuário e perfil

  • Organização — Uma GitHub conta compartilhada em que várias pessoas podem colaborar em vários projetos ao mesmo tempo

Selecione as permissões do GitHub aplicativo para seu GitHub aplicativo. O nível de permissão determina as ações que o GitHub aplicativo pode realizar no seu repositório:

  • Leitura e gravação (padrão): o GitHub aplicativo solicita permissões de leitura e gravação. Isso ativa todos os recursos. DevOps O agente pode publicar comentários embutidos no pull request, propor correções e acionar fluxos de trabalho.

  • Somente leitura: o GitHub aplicativo solicita somente permissões de leitura. DevOps O agente pode visualizar códigos e pull requests, mas não pode postar comentários, propor correções ou acionar fluxos de trabalho.

Se você estiver se conectando a uma instância do GitHub Enterprise Server, marque a caixa de seleção Usar GitHub Enterprise Server e insira a URL HTTPS da sua instância (por exemplo,https://github.example.com).

Se sua instância do GitHub Enterprise Server não estiver acessível publicamente, você pode, opcionalmente, configurar uma conexão privada para permitir que o AWS DevOps Agente acesse sua instância com segurança. Para obter mais informações, consulte Conectando-se a ferramentas hospedadas de forma privada.

nota

Não /api/v3 inclua nenhum caminho final no URL — insira somente o URL base.

Etapa 3: configurar o GitHub aplicativo

Escolha Enviar para iniciar o processo de configuração do aplicativo. As próximas etapas variam dependendo se você está se conectando ao Enterprise Server GitHub.com ou ao GitHub Enterprise Server.

Para GitHub.com

  1. Você será redirecionado para GitHub instalar o GitHub aplicativo AWS DevOps Agent.

  2. Selecione em qual conta ou organização instalar o aplicativo.

  3. O aplicativo permite que o AWS DevOps Agente receba eventos de repositórios conectados, incluindo eventos de implantação.

Para servidor GitHub corporativo

GitHub O Enterprise Server usa um fluxo de manifesto de GitHub aplicativo, que configura automaticamente um novo GitHub aplicativo na sua instância. Isso envolve dois redirecionamentos para sua instância do GitHub Enterprise Server.

  1. Seu navegador será redirecionado para a página “Criar GitHub aplicativo” da sua instância do GitHub Enterprise Server.

  2. Você verá o nome do aplicativo pré-preenchido. Sinta-se à vontade para alterar o nome conforme necessário. Escolha Criar GitHub aplicativo.

  3. Você será redirecionado de volta para o AWS DevOps Agent, que troca o código do manifesto pelas credenciais do aplicativo.

Etapa 4: selecionar repositórios e concluir a instalação

  1. Você verá a página Instalar e Autorizar do GitHub aplicativo.

  2. Selecione quais repositórios permitir que o aplicativo acesse:

    • Todos os repositórios — Conceda acesso a todos os repositórios atuais e futuros

    • Selecione somente repositórios — Escolha repositórios específicos da sua conta ou organização

  3. Escolha Instalar e autorizar.

  4. Você será redirecionado de volta ao console do AWS DevOps agente, onde GitHub aparecerá como registrado no nível da conta.

Conectando repositórios a um Espaço do Agente

Depois de se registrar GitHub no nível da conta, você pode conectar repositórios específicos a Agent Spaces 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. GitHubSelecione na lista de provedores disponíveis

  5. Selecione o GitHub registro que contém os repositórios que você deseja usar

  6. Selecione o subconjunto de repositórios relevantes para esse Espaço do Agente

  7. Escolha Adicionar para concluir a conexão

Você pode conectar diferentes conjuntos de repositórios a diferentes Agent Spaces com base nas suas necessidades organizacionais. Um único Espaço do Agente pode usar repositórios de vários registros. Para adicionar repositórios de outro registro, repita essas etapas.

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

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

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

  • Capacidades — Escolha recursos de revisão de código e testes automatizados para cada repositório. A seção fornece duas configurações por repositório:

    • Análise automática de alterações por gatilho — Quando habilitado para um repositório, o DevOps Agente é executado automaticamente Revisões do código de prontidão para lançamento sempre que uma pull request é aberta ou atualizada. Os resultados da revisão aparecem como comentários embutidos na pull request. Isso é ativado por padrão para todos os repositórios conectados.

    • Teste de verificação automatizado — Quando habilitado para um repositório, o DevOps Agent cria, executa e testa suas alterações de código em um ambiente de verificação gerenciado durante as análises 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 repositórios conectados.

  • Lista de repositórios — Mostra todos os repositórios selecionados durante a etapa de conexão. Use o campo de pesquisa para filtrar repositórios por nome. Cada repositório 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 nos repositórios 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 de agente principal.

Para configurar avaliações automatizadas:

  1. Depois de conectar seus repositórios, navegue até a seção Revisão de código e teste automatizado em suas configurações de GitHub integração.

  2. Para cada repositório, ative ou desative o recurso de revisão automática de alterações, dependendo se você deseja revisões automáticas de pull request.

  3. Para cada repositório, 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 do Runtime que o DevOps Agente assumirá ao executar recursos automatizados nos repositórios selecionados.

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

Depois de configurada, qualquer nova pull request em um repositório 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 revisão 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 para lançamento.

Entendendo o GitHub aplicativo

O GitHub aplicativo AWS DevOps Agent:

  • Solicita acesso aos seus repositórios — você pode revisar as permissões específicas durante a instalação do GitHub aplicativo

  • Recebe eventos de implantação e outros eventos do repositório

  • Permite que o AWS DevOps agente correlacione alterações de código com incidentes operacionais

  • Pode ser desinstalado a qualquer momento por meio de suas configurações GitHub

Para o GitHub Enterprise Server, o GitHub aplicativo é criado automaticamente na sua instância durante o registro. Você pode gerenciar o acesso ao repositório do aplicativo ou desinstalá-lo em Configurações > Aplicativos > GitHub Aplicativos instalados. Para excluir totalmente a definição do aplicativo, acesse Configurações > Configurações do desenvolvedor > GitHub Aplicativos.

GitHub Atualizações de permissões do aplicativo

AWS DevOps O agente pode solicitar atualizações de permissão após a instalação do GitHub aplicativo para oferecer suporte a novos recursos. Quando isso acontece:

  1. Você receberá uma notificação GitHub sobre a solicitação de atualização de permissão.

  2. Analise os detalhes da atualização para entender quais novas permissões estão sendo solicitadas.

  3. Escolha Aceitar novas permissões para conceder as permissões atualizadas.

Nenhuma alteração é necessária em seu serviço ou aplicativo. Depois de aceitar as permissões atualizadas, o próximo token de acesso de instalação solicitado pelo AWS DevOps Agente GitHub incluirá automaticamente as novas permissões.

nota

Até que você aceite uma atualização de permissão, o AWS DevOps Agente continua operando com as permissões concedidas anteriormente. Novos recursos que dependem das permissões atualizadas não estarão disponíveis até que você aprove a solicitação. O aplicativo manterá suas permissões atuais se você optar por não aceitar as novas permissões.

Permissões solicitadas da

A tabela a seguir descreve cada permissão que o AWS DevOps Agent GitHub App solicita e por que ela é necessária.

Se você selecionou Somente leitura durante o registro, o GitHub aplicativo solicitará acesso em nível de leitura somente para cada permissão na tabela a seguir. Com as permissões Somente Leitura, o GitHub aplicativo não pode realizar ações em nível de gravação listadas na coluna Propósito.

Permissão Nível de acesso Finalidade
Cheques Leia e escreva A revisão do código de prontidão pós-lançamento resulta à medida que a verificação é executada nas pull requests, permitindo que o status da revisão apareça diretamente na GitHub interface do usuário.
Fluxos de trabalho Leia e escreva Leia as definições do fluxo de trabalho e acione fluxos de trabalho do GitHub Actions para testes de lançamento em seus CI/CD pipelines.
Ações Leia e escreva Monitore GitHub as execuções do fluxo de trabalho de ações e acesse os registros de execução durante investigações de incidentes e testes de lançamento.
Conteúdo Leia e escreva Leia o código-fonte do repositório para análise de revisão de código e mapeamento de dependências. O acesso de gravação permite que o agente proponha correções para problemas identificados.
Solicitações pull Leia e escreva Leia os detalhes da pull request para acionar análises automáticas de código. O acesso de gravação permite publicar comentários de revisão em linha com descobertas e correções recomendadas.

Gerenciando GitHub conexões

  • Atualizando o acesso ao repositório — Para alterar quais repositórios o GitHub aplicativo pode acessar, acesse as configurações da sua GitHub conta ou organização (ou as configurações da instância do GitHub Enterprise Server), navegue até os GitHub aplicativos instalados e modifique a configuração do aplicativo do AWS DevOps Agente.

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

  • Removendo a GitHub conexão — Para se desconectar GitHub de um Espaço do Agente, selecione a conexão na seção Pipeline e escolha Remover. Para desinstalar completamente o GitHub aplicativo, desinstale-o das configurações da sua GitHub conta ou organização. Para o GitHub Enterprise Server, como o GitHub aplicativo é criado diretamente na sua instância durante o registro, você pode, opcionalmente, limpar o aplicativo por completo executando as duas ações a seguir:

    • Desinstalar o aplicativo — Vá para Configurações > Aplicativos > GitHub Aplicativos instalados, escolha Configurar no aplicativo e desinstale-o.

    • Excluir o aplicativo — Vá para Configurações > Configurações do desenvolvedor > GitHub Aplicativos, selecione o aplicativo, vá até a guia Avançado e escolha Excluir GitHub aplicativo. Aviso: a exclusão do GitHub aplicativo é permanente e não pode ser desfeita. Se você excluí-lo, precisará registrar novamente o GitHub Enterprise Server desde o início no console do AWS DevOps Agente para criar um novo aplicativo.