As atualizações de multi-ecossistemas permitem consolidar as solicitações de pull do Dependabot em diferentes ecossistemas de pacotes em uma única solicitação por grupo. Consulte Atualizações de vários ecossistemas.
Pré-requisitos
- Um repositório com dependências em vários ecossistemas de pacotes
- Um arquivo existente
.github/dependabot.yml. Consulte Configuração de atualizações de versão do Dependabot.
1. Defina seu grupo de vários ecossistemas em seu .github/dependabot.yml arquivo
Comece definindo um grupo com um agendamento na seção multi-ecosystem-groups de nível superior:
version: 2
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
updates:
# Your existing package ecosystems will go here
version: 2
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
updates:
# Your existing package ecosystems will go here
2. Atribuir ecossistemas ao grupo
Adicione a chave multi-ecosystem-groups e os padrões às configurações do ecossistema de pacotes.
version: 2
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
updates:
- package-ecosystem: "docker"
directory: "/"
patterns: ["nginx", "redis", "postgres"]
multi-ecosystem-group: "infrastructure"
- package-ecosystem: "terraform"
directory: "/"
patterns: ["aws", "terraform-*"]
multi-ecosystem-group: "infrastructure"
version: 2
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
updates:
- package-ecosystem: "docker"
directory: "/"
patterns: ["nginx", "redis", "postgres"]
multi-ecosystem-group: "infrastructure"
- package-ecosystem: "terraform"
directory: "/"
patterns: ["aws", "terraform-*"]
multi-ecosystem-group: "infrastructure"
Observação
Use ["*"] para incluir todas as dependências.
3. Confirmar suas alterações
Realize o commit das alterações no arquivo dependabot.yml.
4. Personalizar com chaves adicionais (opcional)
Você pode adicionar rótulos, revisores ou outras opções de configuração aos seus grupos de vários ecossistemas. Veja assignees e labels.
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
assignees: ["@platform-team"]
labels: ["infrastructure", "dependencies"]
updates:
- package-ecosystem: "docker"
directory: "/"
patterns: ["nginx", "redis", "postgres"]
multi-ecosystem-group: "infrastructure"
- package-ecosystem: "terraform"
directory: "/"
patterns: ["aws", "terraform-*"]
multi-ecosystem-group: "infrastructure"
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
assignees: ["@platform-team"]
labels: ["infrastructure", "dependencies"]
updates:
- package-ecosystem: "docker"
directory: "/"
patterns: ["nginx", "redis", "postgres"]
multi-ecosystem-group: "infrastructure"
- package-ecosystem: "terraform"
directory: "/"
patterns: ["aws", "terraform-*"]
multi-ecosystem-group: "infrastructure"
Para obter uma lista completa das opções disponíveis, consulte Referência de opções do Dependabot.
5. Verificar sua configuração
Depois de confirmar suas alterações, você pode verificar a configuração:
- Navegue até a guia Insights do seu repositório.
- Selecione grafo de dependência, então Dependabot.
- Confirme se o grupo de vários ecossistemas aparece na lista.
Na próxima vez que a atualização agendada for executada, você receberá uma única solicitação de pull com atualizações de todos os ecossistemas do grupo.
Solução de problemas
Se você não estiver vendo solicitações de pull consolidadas, verifique se:
- A
patternschave é definida para cada ecossistema (necessário ao usarmulti-ecosystem-group). - Todos os ecossistemas usam o mesmo nome de grupo no
multi-ecosystem-groupcampo.
Leitura adicional
-
[AUTOTITLE](/code-security/dependabot/working-with-dependabot/dependabot-options-reference)