diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml new file mode 100644 index 0000000..e87fb36 --- /dev/null +++ b/.github/dependabot.yaml @@ -0,0 +1,72 @@ +# Routine version-update sweeps only. CVE patches are raised by the +# repo-level "Dependabot security updates" toggle (managed in +# canonical-repo-automation: features.dependabot_security_updates = true), +# which is event-driven and does not honour the schedule below. +version: 2 + +updates: + # GitHub Actions: monthly, single grouped PR. + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "monthly" + labels: + - "dependencies" + open-pull-requests-limit: 100 + commit-message: + prefix: "chore" + cooldown: + default-days: 7 + groups: + actions: + patterns: + - "*" + + # Python (uv): monthly, grouped + - package-ecosystem: "uv" + directory: "/" + schedule: + interval: "monthly" + labels: + - "dependencies" + open-pull-requests-limit: 100 + commit-message: + prefix: "chore" + cooldown: + default-days: 7 + semver-major-days: 14 + groups: + # Charm Tech's own releases (trusted). + charm-tech: + patterns: + - "ops" + - "ops-scenario" + - "ops-tracing" + - "jubilant" + - "pytest-jubilant" + # Linters / type-checkers / formatters / dev tooling. Majors ride along; + # we do not pin these and a major bump is low-risk to review in a batch. + dev-tooling: + patterns: + - "ruff" + - "pyright" + - "ty" + - "codespell" + - "coverage" + - "pre-commit" + - "types-*" + - "zizmor" + - "pip-audit" + # Test runner + other shared test deps. + test-deps: + patterns: + - "pytest" + - "pytest-*" + # Everything else, minor + patch only. A runtime MAJOR falls through + # to its own ungrouped PR so it never silently rides a patch bundle. + runtime: + patterns: + - "*" + update-types: + - "minor" + - "patch" diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index 2ec72f0..0000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,18 +0,0 @@ -version: 2 -updates: - - package-ecosystem: "github-actions" - directory: "/" - schedule: - interval: "monthly" - labels: - - "dependencies" - cooldown: - default-days: 7 - - package-ecosystem: "pip" - directory: "/" - schedule: - interval: "monthly" - labels: - - "dependencies" - cooldown: - default-days: 7