From 0f5abe940a721c4f1fb3750972042b03f64b4792 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Spahn Date: Wed, 8 Jul 2026 17:28:59 +0200 Subject: [PATCH 1/2] chore(cicd): split renovate non-major groups per project Replace the global group:allNonMajor preset with per-project grouping rules so cimxml, cimvocabcheck, cimnotebook, docs, the root pom, and GitHub Actions each get their own non-major update PR. --- .github/renovate.json | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index 2b38985..ff4b9c4 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -1,8 +1,7 @@ { "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": [ - "config:recommended", - "group:allNonMajor" + "config:recommended" ], "dependencyDashboard": true, "labels": ["dependencies"], @@ -15,6 +14,43 @@ "description": "In-repo modules are pinned to the 0.0.0-SNAPSHOT placeholder (versions come from git tags at release time) — never update them", "matchPackageNames": ["de.soptim.opencgmes:*"], "enabled": false + }, + { + "description": "Group non-major updates per project so each gets its own PR", + "matchFileNames": ["cimxml/**"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "cimxml non-major dependencies", + "groupSlug": "cimxml-non-major" + }, + { + "matchFileNames": ["cimvocabcheck/**"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "cimvocabcheck non-major dependencies", + "groupSlug": "cimvocabcheck-non-major" + }, + { + "matchFileNames": ["cimnotebook/**"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "cimnotebook non-major dependencies", + "groupSlug": "cimnotebook-non-major" + }, + { + "matchFileNames": ["docs/**"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "docs non-major dependencies", + "groupSlug": "docs-non-major" + }, + { + "matchFileNames": ["pom.xml"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "maven parent non-major dependencies", + "groupSlug": "maven-parent-non-major" + }, + { + "matchManagers": ["github-actions"], + "matchUpdateTypes": ["minor", "patch", "pin", "digest"], + "groupName": "github actions non-major dependencies", + "groupSlug": "github-actions-non-major" } ], "gitIgnoredAuthors": ["41898282+github-actions[bot]@users.noreply.github.com"] From 463b77293b4a4da5eacc204b31be5076143048d9 Mon Sep 17 00:00:00 2001 From: Jan-Hendrik Spahn Date: Wed, 8 Jul 2026 17:35:08 +0200 Subject: [PATCH 2/2] chore(cicd): group major updates per project too Each project now gets exactly two Renovate PRs: one non-major group and one major group, instead of individual PRs per major update. --- .github/renovate.json | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/.github/renovate.json b/.github/renovate.json index ff4b9c4..258c3e0 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -16,41 +16,77 @@ "enabled": false }, { - "description": "Group non-major updates per project so each gets its own PR", + "description": "Group updates per project — one non-major and one major PR each", "matchFileNames": ["cimxml/**"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "cimxml non-major dependencies", "groupSlug": "cimxml-non-major" }, + { + "matchFileNames": ["cimxml/**"], + "matchUpdateTypes": ["major"], + "groupName": "cimxml major dependencies", + "groupSlug": "cimxml-major" + }, { "matchFileNames": ["cimvocabcheck/**"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "cimvocabcheck non-major dependencies", "groupSlug": "cimvocabcheck-non-major" }, + { + "matchFileNames": ["cimvocabcheck/**"], + "matchUpdateTypes": ["major"], + "groupName": "cimvocabcheck major dependencies", + "groupSlug": "cimvocabcheck-major" + }, { "matchFileNames": ["cimnotebook/**"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "cimnotebook non-major dependencies", "groupSlug": "cimnotebook-non-major" }, + { + "matchFileNames": ["cimnotebook/**"], + "matchUpdateTypes": ["major"], + "groupName": "cimnotebook major dependencies", + "groupSlug": "cimnotebook-major" + }, { "matchFileNames": ["docs/**"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "docs non-major dependencies", "groupSlug": "docs-non-major" }, + { + "matchFileNames": ["docs/**"], + "matchUpdateTypes": ["major"], + "groupName": "docs major dependencies", + "groupSlug": "docs-major" + }, { "matchFileNames": ["pom.xml"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "maven parent non-major dependencies", "groupSlug": "maven-parent-non-major" }, + { + "matchFileNames": ["pom.xml"], + "matchUpdateTypes": ["major"], + "groupName": "maven parent major dependencies", + "groupSlug": "maven-parent-major" + }, { "matchManagers": ["github-actions"], "matchUpdateTypes": ["minor", "patch", "pin", "digest"], "groupName": "github actions non-major dependencies", "groupSlug": "github-actions-non-major" + }, + { + "matchManagers": ["github-actions"], + "matchUpdateTypes": ["major"], + "groupName": "github actions major dependencies", + "groupSlug": "github-actions-major" } ], "gitIgnoredAuthors": ["41898282+github-actions[bot]@users.noreply.github.com"]