Skip to main content

Configurando o Dependabot para ser executado em executores de ação hospedados no github usando o Azure Rede Privada

Você pode configurar uma Rede Virtual do Azure (VNET) para executar Dependabot em executores hospedados em GitHub.

Quem pode usar esse recurso?

Usuários com com acesso para gravação

Configurando a VNET para Dependabot updates

Este artigo contém instruções passo a passo para executar Dependabot em executores hospedados em GitHub configurados com VNET. O artigo explica:

  • Como criar grupos de executores para sua empresa ou organização com uma configuração de VNET.
  • Como criar executores hospedados em GitHub para Dependabot em um grupo de executores.
  • Como habilitar Dependabot em executores grandes.
  • Como configurar as regras de IP de firewall da VNET do Azure.

Para usar executores hospedados em GitHub com a VNET do Azure, primeiro é necessário configurar seus recursos no Azure e, em seguida, criar uma configuração de rede privada em GitHub.

Configurando recursos de Azure

Para saber como usar executores hospedados em GitHub com uma rede privada do Azure, consulte Configurando seus recursos do Azure na documentação de GitHub Enterprise Cloud.

Observação

  • O databaseId que é necessário no script para configurar os recursos de Azure pode se referir a qualquer um dos seguintes, dependendo se você estiver configurando os recursos para uma empresa ou uma organização:
  • Ao campo de dados dinâmico da empresa, que você pode identificar na URL da sua empresa, https://github.com/enterprises/SLUG, ou
  • Ao logon da conta da sua organização, que você pode identificar na URL da sua organização, https://github.com/organizations/ORGANIZATION_LOGIN.
  • O script retornará a carga completa do recurso criado. O valor de hash GitHubId retornado no payload do recurso criado corresponde ao ID do recurso de configurações de rede que será usado nas próximas etapas ao configurar a rede em GitHub

Configurando um executor injetado na VNET para Dependabot updates em sua empresa.

Depois de configurar seus recursos de Azure, você pode usar uma VNET (Rede Virtual do Azure) para rede privada criando uma configuração de rede no nível da organização. Em seguida, você pode associar essa configuração de rede a grupos de executores.

  1. Adicione uma nova configuração de rede para sua empresa. Consulte Adicionar uma nova configuração de rede para sua empresa na GitHub Enterprise Cloud documentação.
  2. Crie um grupo de executores para a empresa e selecione as organizações nas quais você deseja executar Dependabot updates. Consulte Criar um grupo de executores para sua empresa na documentação de GitHub Enterprise Cloud.
  3. Crie e adicione um executor hospedado em GitHub ao grupo de executores da empresa. Consulte Adicionando um executor maior a uma empresa na documentação de GitHub Enterprise Cloud. Os pontos importantes são:
    • O nome do executor deve ser dependabot

    • Escolha uma plataforma x64 do Linux.

    • Selecione a versão adequada do Ubuntu.

    • Ao adicionar o executor hospedado em GitHub a um grupo de executores, selecione o grupo criado na etapa anterior.

    Observação

    Nomear o executor hospedado em GitHub como dependabot atribui o rótulo dependabot ao executor, permitindo que ele execute tarefas acionadas por ações de Dependabot.

Disparando uma execução Dependabot

Agora que a rede privada com VNET está configurada, você já pode iniciar uma execução Dependabot.

  1. Em GitHub, acesse a página principal do repositório.

  2. Abaixo do nome do repositório, clique na guia Insights.

  3. Na barra lateral esquerda, clique em Grafo de dependência.

    Captura de tela da guia "Grafo de dependência". A guia está realçada com um contorno laranja.

  4. Em "Grafo de dependência", clique em Dependabot .

  5. À direita do nome do arquivo de manifesto no qual tem interesse, clique em Recent update jobs.

  6. Se não houver trabalhos de atualização recentes para o arquivo de manifesto, clique em Check for updates para executar novamente um trabalho de atualização do Dependabot e verifique se há novas atualizações de dependências desse ecossistema.

Verificando logs e trabalhos ativos para Dependabot updates

  • Você pode visualizar os logs do Dependabot fluxo de trabalho na guia Ações do seu repositório. Verifique se você selecionou o Dependabot job na barra lateral esquerda da página Actions.

    Exemplo de log de um fluxo de trabalho "Dependabot na VNET". O trabalho do Dependabot é realçado com um contorno laranja.

  • Você pode exibir os trabalhos ativos na página que contém informações sobre o executor. Para acessar essa página, clique na guia Políticas da empresa, selecione Ações na barra lateral esquerda, clique na guia Grupo de executores e selecione o executor.

    Captura de tela mostrando os trabalhos ativos de um executor do Dependabot.

Configurando regras de IP do firewall da VNET do Azure

Se o ambiente VNET do Azure estiver configurado com um firewall baseado em lista de permissões de IP, poderá ser necessário atualizar essa lista para incluir os endereços IP dos executores hospedados GitHub, obtidos por meio do ponto de extremidade da API de metadados.

  •         GitHub fornece o seguinte endpoint público para seus intervalos de IP:
    

    OBTER https://api.github.com/meta

  • Copie e cole o seguinte comando curl no seu terminal ou prompt de comando e substitua o valor do token de portador do espaço reservado pelo valor real.

    Bash
          curl -L \
          -H "Accept: application/vnd.github+json" \
          -H "Authorization: Bearer YOUR-TOKEN" \
          -H "X-GitHub-Api-Version: 2022-11-28" \
          https://api.github.com/meta
    
  • Na resposta, procure a chave de ações.

        "actions": [ ... ]
    

    Esses são os intervalos de IP usados pelos GitHub Actions executores, incluindo Dependabot e os executores hospedados.

  • Adicione esses IPs à sua lista de permissões de firewall.