Skip to main content

Esta versão do GitHub Enterprise Server será descontinuada em 2026-03-17. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, segurança aprimorada e novos recursos, atualize para a última versão do GitHub Enterprise Server. Para obter ajuda com a atualização, entre em contato com o suporte do GitHub Enterprise.

Dependabot no GitHub Actions

Informações detalhadas sobre como usar Dependabot com GitHub Actions.

Restrições quando o Dependabot dispara eventos

Dependabot consegue acionar fluxos de trabalho de GitHub Actions nos seus pull requests e comentários. No entanto, certos eventos são tratados de maneira diferente.

Para fluxos de trabalho iniciados pelo Dependabot (github.actor == 'dependabot[bot]') usando os eventos pull_request, pull_request_review, pull_request_review_comment, push, create, deployment e deployment_status, estas restrições se aplicam:

  •         `GITHUB_TOKEN` tem permissões somente leitura por padrão.
    
  • Os segredos são preenchidos do Dependabot. Os segredos de GitHub Actions não estão disponíveis.

Para fluxos de trabalho iniciados pelo Dependabot (github.actor == 'dependabot[bot]') usando o evento pull_request_target, se a referência de base da solicitação de pull tiver sido criada pelo Dependabot (github.event.pull_request.user.login == 'dependabot[bot]'), o GITHUB_TOKEN será somente leitura e os segredos não ficarão disponíveis.

Essas restrições se aplicam mesmo que o fluxo de trabalho seja executado novamente por outro agente.

Para obter mais informações, confira Como manter suas GitHub Actions e seus fluxos de trabalho seguros: prevenção contra solicitações pwn.

Requisitos para usar Dependabot com executores auto-hospedados

Para gerar Dependabot updates usando executores auto-hospedados, você precisa configurar corretamente seu sistema, rede e certificados.

Requisitos do sistema

Qualquer máquina virtual (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.

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 de rede

Os executores de Dependabot exigem acesso à internet pública, GitHub.com e a todos os registros internos que serão usados nas atualizações do Dependabot updates. 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.

Configuração do Certificado

Se o Dependabot precisar interagir com registros que usam certificados autoassinados, esses certificados também deverão ser instalados nos executores auto-hospedados que executam trabalhos do Dependabot. Essa segurança fortalece a conexão. Você também deve configurar o Node.js para usar o certificado, pois a maioria das ações são escritas em JavaScript e são executadas usando Node.js, que não usa o repositório de certificados do sistema operacional.