Preparando-se para personalizar solicitações de pull
Se ainda não tiver configurado um arquivo dependabot.yml para o repositório e quiser personalizar pull requests para atualizações de segurança, primeiro você deverá:
- Fazer check-in de um arquivo
dependabot.ymlno diretório do.githubdo seu repositório. Para saber mais, confira Configuração de atualizações de versão do Dependabot. - Definir todas as chaves obrigatórias. Para obter mais informações, consulte Chaves obrigatórias.
- Se você quiser que a personalização de um ecossistema de pacotes aplique-se apenas a atualizações de segurança (e exclua atualizações de versão), defina a chave
open-pull-requests-limitcomo0.
Em seguida, você pode considerar quais são suas necessidades e prioridades para atualizações de segurança e aplicar uma combinação das opções de personalização descritas abaixo.
Como priorizar atualizações significativas
Para criar um processo de revisão mais direcionado que priorize atualizações significativas, use groups para combinar atualizações de segurança para várias dependências em uma única pull request.
Para obter diretrizes detalhadas, confira Como priorizar atualizações significativas.
Adicionando destinatários automaticamente
Use assignees para adicionar automaticamente indivíduos ou equipes como destinatários a pull requests.
Para obter diretrizes detalhadas, confira Adicionando destinatários automaticamente.
Adicionar revisores automaticamente
Para garantir que a equipe apropriada trate as atualizações de segurança do projeto imediatamente, adicione de modo automático revisores às pull requests Dependabot usando um arquivo CODEOWNERS. Confira Sobre os proprietários de código.
Como rotular pull requests com rótulos personalizados
Para priorizar pull requests específicas ou integrá-las a pipelines de CI/CD, use labels para aplicar seus rótulos personalizados a cada pull request.
Para obter orientações detalhadas, consulte Rotular pull requests com rótulos personalizados.
Adicionar um prefixo a mensagens de confirmação
Para integrar-se a automações que processam mensagens de confirmação ou títulos de pull requests, use commit-message para especificar o prefixo desejado para mensagens de confirmação e títulos de pull requests.
Para obter orientações detalhadas, consulte Adicionar um prefixo a mensagens de confirmação.
Associar pull requests a um marco
Para acompanhar o progresso em direção a uma meta ou versão do projeto, use milestone para associar as pull requests do Dependabot a um marco.
Para obter orientações detalhadas, consulte Associar pull requests a um marco.
Alterar o separador no nome da ramificação da pull request
Para garantir que os nomes de ramificações estejam alinhados com as convenções existentes da sua equipe, use pull-request-branch-name.separator para especificar o separador que você quer que o Dependabot use para nomes de ramificações.
Para obter orientações detalhadas, consulte Alterar o separador no nome da ramificação da pull request.
Exemplo 1: configuração somente para atualizações de segurança
Neste exemplo, o arquivo dependabot.yml:
- Usa um registro privado para atualizações em dependências do npm.
- Desabilita atualizações de versão para dependências, de modo que todas as personalizações se apliquem apenas a atualizações de segurança.
- É personalizado para que o Dependabot aplique rótulos personalizados às pull requests e adicione automaticamente responsáveis.
- Agrupa atualizações de segurança para dependências da Golang em apenas uma pull request.
# Example configuration file that:
# - Uses a private registry for npm updates
# - Ignores lodash dependency
# - Disables version-updates
# - Applies custom labels
# - Adds assignees
# - Group security updates for golang dependencies into a single pull request
version: 2
registries:
# Define a private npm registry with the name `example`
example:
type: npm-registry
url: https://example.com
token: ${{secrets.NPM_TOKEN}}
updates:
- package-ecosystem: "npm"
directory: "/src/npm-project"
schedule:
interval: "daily"
# For Lodash, ignore all updates
ignore:
- dependency-name: "lodash"
# Disable version updates for npm dependencies
open-pull-requests-limit: 0
registries:
# Ask Dependabot to use the private registry for npm
- example
# Raise all npm pull requests for security updates with custom labels
labels:
- "npm dependencies"
- "triage-board"
# Raise all npm pull requests for security updates with assignees
assignees:
- "user-name"
- package-ecosystem: "gomod"
groups:
# Group security updates for golang dependencies
# into a single pull request
golang:
applies-to: security-updates
patterns:
- "golang.org*"
# Example configuration file that:
# - Uses a private registry for npm updates
# - Ignores lodash dependency
# - Disables version-updates
# - Applies custom labels
# - Adds assignees
# - Group security updates for golang dependencies into a single pull request
version: 2
registries:
# Define a private npm registry with the name `example`
example:
type: npm-registry
url: https://example.com
token: ${{secrets.NPM_TOKEN}}
updates:
- package-ecosystem: "npm"
directory: "/src/npm-project"
schedule:
interval: "daily"
# For Lodash, ignore all updates
ignore:
- dependency-name: "lodash"
# Disable version updates for npm dependencies
open-pull-requests-limit: 0
registries:
# Ask Dependabot to use the private registry for npm
- example
# Raise all npm pull requests for security updates with custom labels
labels:
- "npm dependencies"
- "triage-board"
# Raise all npm pull requests for security updates with assignees
assignees:
- "user-name"
- package-ecosystem: "gomod"
groups:
# Group security updates for golang dependencies
# into a single pull request
golang:
applies-to: security-updates
patterns:
- "golang.org*"
Exemplo 2: configuração para atualizações de versão e atualizações de segurança
Neste exemplo, o arquivo dependabot.yml:
- Ela é personalizada para que o Dependabot adicione rótulos personalizados a atualizações de versão e atualizações de segurança.
- Usa a opção de personalização
groupspara criar dois grupos ("angular" e "production-dependencies") para agrupar várias atualizações em pull requests únicas. - Especifica que a personalização
groupsparaangularse aplica apenas a atualizações de segurança. - Especifica que a personalização
groupsparaproduction-dependenciesse aplica somente a atualizações de versão.
version: 2
updates:
# Keep npm dependencies up to date
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
# Raise all npm pull requests for security and version updates with custom labels
labels:
- "npm dependencies"
- "triage-board"
groups:
angular:
# Group security updates for Angular dependencies into a single pull request
applies-to: security-updates
patterns:
- "@angular*"
production-dependencies:
# Group version updates for dependencies of type "production" into a single pull request
applies-to: version-updates
dependency-type: "production"
version: 2
updates:
# Keep npm dependencies up to date
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
# Raise all npm pull requests for security and version updates with custom labels
labels:
- "npm dependencies"
- "triage-board"
groups:
angular:
# Group security updates for Angular dependencies into a single pull request
applies-to: security-updates
patterns:
- "@angular*"
production-dependencies:
# Group version updates for dependencies of type "production" into a single pull request
applies-to: version-updates
dependency-type: "production"
Leitura adicional
-
[AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference) -
[AUTOTITLE](/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot)