Sobre executores auto-hospedados para Dependabot updates
É possível ajudar os usuários do sua instância do GitHub Enterprise Server a criar e manter o códigos seguros configurando as atualizações de segurança e versão do Dependabot. Com Dependabot updates, os desenvolvedores podem configurar repositórios para que suas dependências sejam atualizadas e mantidas seguras automaticamente. Para obter mais informações, confira "Habilitando o Dependabot para sua empresa".
Para usar o Dependabot updates no sua instância do GitHub Enterprise Server, deve-se configurar executores auto-hospedados a fim de criar as solicitações de pull que atualizarão as dependências.
Pré-requisitos
A configuração de executores auto-hospedados é apenas uma etapa no meio do processo para habilitar Dependabot updates. Há várias etapas a serem seguidas antes dessas, incluindo a configuração do sua instância do GitHub Enterprise Server para usar o GitHub Actions com executores auto-hospedados. Para obter mais informações, confira "Habilitando o Dependabot para sua empresa".
Configurando executores auto-hospedados para Dependabot updates
Depois de configurar o sua instância do GitHub Enterprise Server para usar o GitHub Actions, adicione executores auto-hospedados para Dependabot updates.
Requisitos do sistema para executores de Dependabot
Qualquer VM que você usar para executores de Dependabot deve atender aos requisitos para executores auto-hospedados. Além disso, eles têm de cumprir os seguintes requisitos.
- Sistema operacional Linux
- Arquitetura x64
- Docker instalado com acesso para os usuários do executor:
- Recomendamos instalar o Docker no modo sem raiz e configurar os executores para acessar o Docker sem privilégios
root
. - Como alternativa, instale o Docker e dê aos usuários do executor privilégios elevados para executar o Docker.
- Recomendamos instalar o Docker no modo sem raiz e configurar os executores para acessar o Docker sem privilégios
Os requisitos de CPU e memória dependerão do número de executores simultâneos que você implanta em uma determinada VM. Como orientação, criamos de forma bem-sucedida 20 executores em uma única máquina CPU de 8 GB, mas, em última análise, seus requisitos de CPU e memória dependerão fortemente da atualização dos repositórios. Alguns ecossistemas exigirão mais recursos do que outros.
Se você especificar mais de 14 executores simultâneos em uma VM, também precisará atualizar a configuração /etc/docker/daemon.json
do Docker para aumentar o número padrão de redes que o Docker pode criar.
{
"default-address-pools": [
{"base":"10.10.0.0/16","size":24}
]
}
Requisitos da rede para executores de Dependabot
Os executores de Dependabot exigem acesso à internet pública, GitHub.com e a todos os registros internos que serão usados nas atualizações de Dependabot. Para minimizar o risco para sua rede interna, você deve limitar o acesso da Máquina Virtual (VM) à sua rede interna. Isto reduz o potencial de danos nos sistemas internos se um executor fizer o download de uma dependência capturada.
Adicionando executores auto-hospedados para atualizações de Dependabot
-
Provisionamento de executores auto-hospedados no nível da conta do repositório, organização ou empresa. Para obter mais informações, confira "Sobre executores auto-hospedados" e "Adicionar executores auto-hospedados."
-
Configure os executores auto-hospedados com os requisitos descritos acima. Por exemplo, em uma VM que executa o Ubuntu 20.04:
- Instale o Docker e certifique-se de que os usuários do executor tenham acesso ao Docker. Para obter mais informações, consulte a documentação do Docker.
- Instalar o mecanismo do Docker no Ubuntu
- Abordagem recomendada: executar o daemon do Docker como um usuário não raiz (modo sem raiz)
- Abordagem alternativa: gerenciar o Docker como um usuário não raiz
- Verifique se os executores têm acesso à internet pública e só podem acessar as redes internas de que Dependabot precisa.
- Instale o Docker e certifique-se de que os usuários do executor tenham acesso ao Docker. Para obter mais informações, consulte a documentação do Docker.
-
Atribua um rótulo
dependabot
a cada executor que deseja que o Dependabot use. Para obter mais informações, confira "Usar rótulos com os executores auto-hospedados". -
Opcionalmente, habilite os fluxos de trabalho acionados por Dependabot para usar permissões além das permissões somente leitura e ter acesso a todos os segredos que estão normalmente disponíveis. Para obter mais informações, confira "Solucionar problemas no GitHub Actions para a sua empresa".