| title | Configuring multi-ecosystem updates for Dependabot | ||
|---|---|---|---|
| intro | Reduce the number of {% data variables.product.prodname_dependabot %} pull requests you receive by grouping updates across multiple ecosystems into a single, consolidated pull request. | ||
| permissions | {% data reusables.permissions.dependabot-yml-configure %} | ||
| allowTitleToDifferFromFilename | true | ||
| contentType | how-tos | ||
| versions |
|
||
| shortTitle | Configure multi-ecosystem updates | ||
| redirect_from |
|
||
| category |
|
Multi-ecosystem updates allow you to consolidate {% data variables.product.prodname_dependabot %} pull requests across different package ecosystems into a single PR per group. See AUTOTITLE.
- A repository with dependencies in multiple package ecosystems
- An existing
.github/dependabot.ymlfile. See AUTOTITLE.
Start by defining a group with a schedule in the top-level multi-ecosystem-groups section:
version: 2
multi-ecosystem-groups:
infrastructure:
schedule:
interval: "weekly"
updates:
# Your existing package ecosystems will go hereAdd the multi-ecosystem-groups key and patterns to your package ecosystem configurations.
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"Note
Use ["*"] to include all dependencies.
Commit the changes to your dependabot.yml file.
You can add assignees, labels, or other configuration options to your multi-ecosystem groups. See assignees and 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"For a complete list of available options, see AUTOTITLE.
After committing your changes, you can verify the configuration:
- Navigate to your repository's Insights tab.
- Select Dependency graph, then {% data variables.product.prodname_dependabot %}.
- Confirm your multi-ecosystem group appears in the list.
The next time the scheduled update runs, you'll receive a single pull request with updates from all ecosystems in the group.
If you're not seeing consolidated pull requests, ensure that:
- The
patternskey is defined for each ecosystem (required when usingmulti-ecosystem-group). - All ecosystems use the same group name in the
multi-ecosystem-groupfield.