fix(ci): consolidate Dependabot configs to resolve overlapping directories

Dependabot rejected the previous configuration due to duplicate
package-ecosystem/directory combinations. Merged separate patch/minor/major
update configs into single configs per directory with grouped update types.
This commit is contained in:
Ryan Walters
2025-11-23 01:14:39 -06:00
parent 50c0033f2f
commit 984a2e95ca

181
.github/dependabot.yml vendored
View File

@@ -4,135 +4,40 @@
# Strategy: # Strategy:
# - Weekly checks for faster vulnerability detection # - Weekly checks for faster vulnerability detection
# - Separate patch/minor/major updates to prevent blocking # - Separate patch/minor/major updates to prevent blocking
# - Group by crate (game vs server) for easier review
# - Auto-merge patches via GitHub branch protection rules # - Auto-merge patches via GitHub branch protection rules
# - Limit concurrent PRs to avoid spam # - Limit concurrent PRs to avoid spam
version: 2 version: 2
updates: updates:
# Game: Patch updates (auto-mergeable) # Cargo workspace (all Rust crates)
- package-ecosystem: "cargo" - package-ecosystem: "cargo"
directory: "/pacman" directory: "/"
schedule: schedule:
interval: "weekly" interval: "weekly"
day: "monday" day: "monday"
open-pull-requests-limit: 5 open-pull-requests-limit: 5
groups:
game-patches:
applies-to: "version-updates"
update-types:
- "patch"
ignore: ignore:
# Bevy ECS 0.17+ requires API migration - ignore until manual update # Bevy ECS 0.17+ requires API migration
- dependency-name: "bevy_ecs" - dependency-name: "bevy_ecs"
versions: ["0.17.x", "0.18.x", "0.19.x"] versions: ["0.17.x", "0.18.x", "0.19.x"]
labels: # jsonwebtoken 10+ requires crypto backend feature flag
- "dependencies"
- "dependencies:patch"
- "game"
# Game: Minor updates (grouped, manual review)
- package-ecosystem: "cargo"
directory: "/pacman"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
game-minor:
applies-to: "version-updates"
update-types:
- "minor"
ignore:
- dependency-name: "bevy_ecs"
versions: ["0.17.x", "0.18.x", "0.19.x"]
labels:
- "dependencies"
- "dependencies:minor"
- "game"
# Game: Major updates (separate PRs, manual review)
- package-ecosystem: "cargo"
directory: "/pacman"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
game-major:
applies-to: "version-updates"
update-types:
- "major"
ignore:
- dependency-name: "bevy_ecs"
versions: ["0.17.x", "0.18.x", "0.19.x"]
labels:
- "dependencies"
- "dependencies:major"
- "game"
# Server: Patch updates (auto-mergeable)
- package-ecosystem: "cargo"
directory: "/pacman-server"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
server-patches:
applies-to: "version-updates"
update-types:
- "patch"
ignore:
# jsonwebtoken 10+ requires crypto backend feature flag - ignore until manual migration
- dependency-name: "jsonwebtoken" - dependency-name: "jsonwebtoken"
versions: ["10.x", "11.x"] versions: ["10.x", "11.x"]
labels:
- "dependencies"
- "dependencies:patch"
- "server"
# Server: Minor updates (grouped, manual review)
- package-ecosystem: "cargo"
directory: "/pacman-server"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups: groups:
server-minor: rust-patches:
applies-to: "version-updates" applies-to: "version-updates"
update-types: update-types: ["patch"]
- "minor" rust-minor:
ignore: applies-to: "version-updates"
- dependency-name: "jsonwebtoken" update-types: ["minor"]
versions: ["10.x", "11.x"] rust-major:
applies-to: "version-updates"
update-types: ["major"]
labels: labels:
- "dependencies" - "dependencies"
- "dependencies:minor" - "rust"
- "server"
# Server: Major updates (separate PRs, manual review) # Frontend (web/)
- package-ecosystem: "cargo"
directory: "/pacman-server"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
server-major:
applies-to: "version-updates"
update-types:
- "major"
ignore:
- dependency-name: "jsonwebtoken"
versions: ["10.x", "11.x"]
labels:
- "dependencies"
- "dependencies:major"
- "server"
# Frontend: Patch updates (auto-mergeable)
- package-ecosystem: "npm" - package-ecosystem: "npm"
directory: "/web" directory: "/web"
schedule: schedule:
@@ -142,65 +47,21 @@ updates:
groups: groups:
frontend-patches: frontend-patches:
applies-to: "version-updates" applies-to: "version-updates"
update-types: update-types: ["patch"]
- "patch"
labels:
- "dependencies"
- "dependencies:patch"
- "frontend"
# Frontend: Minor updates (grouped, manual review)
- package-ecosystem: "npm"
directory: "/web"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
frontend-minor: frontend-minor:
applies-to: "version-updates" applies-to: "version-updates"
update-types: update-types: ["minor"]
- "minor"
labels:
- "dependencies"
- "dependencies:minor"
- "frontend"
# Frontend: Major updates (separate PRs for critical deps)
- package-ecosystem: "npm"
directory: "/web"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
frontend-major-framework: frontend-major-framework:
applies-to: "version-updates" applies-to: "version-updates"
update-types: update-types: ["major"]
- "major"
patterns: patterns:
- "react" - "react"
- "react-dom" - "react-dom"
- "vike" - "vike"
- "vite" - "vite"
labels:
- "dependencies"
- "dependencies:major"
- "frontend"
- "framework"
# Frontend: Other major updates (grouped)
- package-ecosystem: "npm"
directory: "/web"
schedule:
interval: "weekly"
day: "monday"
open-pull-requests-limit: 5
groups:
frontend-major-other: frontend-major-other:
applies-to: "version-updates" applies-to: "version-updates"
update-types: update-types: ["major"]
- "major"
exclude-patterns: exclude-patterns:
- "react" - "react"
- "react-dom" - "react-dom"
@@ -208,10 +69,9 @@ updates:
- "vite" - "vite"
labels: labels:
- "dependencies" - "dependencies"
- "dependencies:major"
- "frontend" - "frontend"
# GitHub Actions: All updates grouped (low risk) # GitHub Actions
- package-ecosystem: "github-actions" - package-ecosystem: "github-actions"
directory: "/" directory: "/"
schedule: schedule:
@@ -220,8 +80,7 @@ updates:
open-pull-requests-limit: 5 open-pull-requests-limit: 5
groups: groups:
github-actions: github-actions:
patterns: patterns: ["*"]
- "*"
labels: labels:
- "dependencies" - "dependencies"
- "github-actions" - "github-actions"