Skip to content

Commit 03854d6

Browse files
stijnpotters1Copilotphilipsens
authored
Refactor Renovate configuration for clarity (#566)
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Sergi Philipsen <philipsen.sergi@gmail.com> Signed-off-by: Stijn Potters <stijn.potters1@gmail.com> Signed-off-by: Sergi Philipsen <philipsen.sergi@gmail.com>
1 parent 1212d75 commit 03854d6

9 files changed

Lines changed: 1141 additions & 906 deletions

File tree

.github/renovate.json

Lines changed: 176 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,230 @@
11
{
22
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
33
"extends": [
4-
"config:recommended"
5-
],
6-
"labels": [
7-
"Dependencies"
8-
],
9-
"ignoreDeps": [
10-
"pnpm"
4+
"config:recommended",
5+
"helpers:pinGitHubActionDigests",
6+
":configMigration",
7+
"security:minimumReleaseAgeNpm"
118
],
9+
"labels": ["Dependencies"],
10+
"ignoreDeps": ["pnpm"],
1211
"dependencyDashboard": true,
12+
"rebaseWhen": "conflicted",
13+
"rangeStrategy": "bump",
14+
"commitMessageTopic": "{{depName}}",
15+
"commitMessageAction": "Update",
16+
"commitMessageExtra": "to {{#if isMajor}}v{{newMajor}}{{else}}v{{newVersion}}{{/if}}",
17+
"commitMessageSuffix": "",
1318
"lockFileMaintenance": {
1419
"enabled": true,
15-
"schedule": [
16-
"before 5am on monday"
17-
]
20+
"schedule": ["before 5am on monday"]
1821
},
1922
"packageRules": [
2023
{
24+
"description": "Tag safe (non-major) updates so they can be auto-merged by CI automation",
25+
"matchUpdateTypes": [
26+
"minor",
27+
"patch",
28+
"pin",
29+
"digest"
30+
],
31+
"addLabels": [
32+
"automerge"
33+
]
34+
},
35+
{
36+
"description": "Never raise PRs for npm peerDependencies",
2137
"matchManagers": [
22-
"github-actions"
38+
"npm"
39+
],
40+
"matchDepTypes": [
41+
"peerDependencies"
42+
],
43+
"enabled": false
44+
},
45+
{
46+
"description": "Catch-all npm minor/patch updates - grouped, weekly, with a supply-chain cool-off",
47+
"matchManagers": [
48+
"npm"
49+
],
50+
"matchUpdateTypes": [
51+
"minor",
52+
"patch"
2353
],
24-
"groupName": "CI Dependencies",
54+
"groupName": "npm-dependencies",
2555
"addLabels": [
26-
"CI"
56+
"JavaScript"
2757
],
2858
"schedule": [
29-
"before 9am on monday"
30-
]
59+
"before 6am on monday"
60+
],
61+
"minimumReleaseAge": "5 days"
3162
},
3263
{
64+
"description": "ESLint & Prettier tooling",
3365
"matchManagers": [
34-
"dockerfile"
66+
"npm"
67+
],
68+
"groupName": "Linting",
69+
"matchPackageNames": [
70+
"/eslint/",
71+
"/prettier/"
3572
],
3673
"addLabels": [
37-
"Docker"
74+
"JavaScript"
3875
],
3976
"schedule": [
40-
"before 9am on monday"
41-
]
77+
"before 6am on monday"
78+
],
79+
"minimumReleaseAge": "5 days"
4280
},
4381
{
82+
"description": "Cypress end-to-end tooling",
4483
"matchManagers": [
45-
"maven"
84+
"npm"
85+
],
86+
"groupName": "Cypress",
87+
"matchPackageNames": [
88+
"cypress",
89+
"/^cypress-/",
90+
"mocha",
91+
"/^mochawesome/"
4692
],
4793
"addLabels": [
48-
"Java"
94+
"JavaScript"
4995
],
5096
"schedule": [
51-
"before 9am on monday"
52-
]
97+
"before 6am on monday"
98+
],
99+
"minimumReleaseAge": "5 days"
53100
},
54101
{
102+
"description": "React core - keep react / react-dom / router / type defs in lock-step",
55103
"matchManagers": [
56104
"npm"
57105
],
58-
"matchDepTypes": [
59-
"peerDependencies"
106+
"groupName": "React",
107+
"matchPackageNames": [
108+
"react",
109+
"react-dom",
110+
"/^react-router/",
111+
"/^@types\\/react/"
60112
],
61-
"enabled": false
113+
"addLabels": [
114+
"JavaScript"
115+
],
116+
"schedule": [
117+
"before 6am on monday"
118+
],
119+
"minimumReleaseAge": "5 days"
62120
},
63121
{
122+
"description": "Frontend Frank!Framework packages",
64123
"matchManagers": [
65124
"npm"
66125
],
67-
"rangeStrategy": "bump",
126+
"groupName": "Frank!Framework Frontend",
127+
"matchPackageNames": [
128+
"/^@frankframework\\//"
129+
],
68130
"addLabels": [
69131
"JavaScript"
70132
],
71133
"schedule": [
72-
"before 9am on monday"
134+
"before 6am on monday"
73135
]
74136
},
75137
{
138+
"description": "Backend Frank!Framework packages (Maven)",
76139
"matchManagers": [
77-
"npm"
140+
"maven"
78141
],
79-
"matchPackagePatterns": [
80-
"^@angular",
81-
"^typescript$"
142+
"groupName": "Frank!Framework Backend",
143+
"matchPackageNames": [
144+
"/^org\\.frankframework:/",
145+
"frankframework.version"
82146
],
83-
"groupName": "Angular",
84147
"addLabels": [
85-
"Angular"
148+
"Java"
149+
],
150+
"schedule": [
151+
"before 6am on monday"
86152
]
87153
}
88-
]
154+
{
155+
"description": "Maven (incl. wrapper) - daily early morning, Java label, supply-chain cool-off",
156+
"matchManagers": [
157+
"maven",
158+
"maven-wrapper"
159+
],
160+
"schedule": [
161+
"0 0-6 * * *"
162+
],
163+
"addLabels": [
164+
"Java"
165+
],
166+
"minimumReleaseAge": "5 days"
167+
},
168+
{
169+
"description": "Group Maven patch updates into a single PR",
170+
"matchManagers": [
171+
"maven"
172+
],
173+
"matchUpdateTypes": [
174+
"patch"
175+
],
176+
"groupName": "maven-dependencies"
177+
},
178+
{
179+
"description": "Spring Boot / Framework - update together, split minor vs patch",
180+
"matchManagers": [
181+
"maven"
182+
],
183+
"groupName": "Spring",
184+
"matchPackageNames": [
185+
"/^org\\.springframework/"
186+
],
187+
"separateMinorPatch": true
188+
},
189+
{
190+
"description": "Container base images - daily early morning, grouped",
191+
"matchManagers": [
192+
"dockerfile",
193+
"docker-compose"
194+
],
195+
"schedule": [
196+
"0 0-6 * * *"
197+
],
198+
"addLabels": [
199+
"Docker"
200+
],
201+
"groupName": "Docker"
202+
},
203+
{
204+
"description": "GitHub Actions - weekly, single grouped PR, pinned to commit digests",
205+
"matchManagers": [
206+
"github-actions"
207+
],
208+
"schedule": [
209+
"before 6am on monday"
210+
],
211+
"addLabels": [
212+
"CI/CD"
213+
],
214+
"groupName": "github-actions",
215+
"separateMajorMinor": false,
216+
"minimumReleaseAge": "7 days"
217+
}
218+
],
219+
"vulnerabilityAlerts": {
220+
"enabled": true,
221+
"labels": [
222+
"Security",
223+
"Dependencies"
224+
],
225+
"addLabels": [
226+
"CVE"
227+
]
228+
},
229+
"osvVulnerabilityAlerts": true
89230
}

.github/workflows/build-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ env:
1717
IMAGE_NAME: ${{ github.repository }}
1818
JAVA_VERSION: 25
1919
NODE_VERSION: 23
20-
PNPM_VERSION: 10.4.0
20+
PNPM_VERSION: 10.32.1
2121

2222

2323
jobs:

.github/workflows/ci.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
env:
1111
JAVA_VERSION: 25
1212
NODE_VERSION: 23
13-
PNPM_VERSION: 10.4.0
13+
PNPM_VERSION: 10.32.1
1414

1515
jobs:
1616
build-and-test:

.github/workflows/sonarqube.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
env:
1111
JAVA_VERSION: 25
1212
NODE_VERSION: 23
13-
PNPM_VERSION: 10.4.0
13+
PNPM_VERSION: 10.32.1
1414

1515
jobs:
1616
build:

.kodiak.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version = 1
2+
3+
[merge]
4+
method = "squash"
5+
delete_branch_on_merge = true
6+
notify_on_conflict = false
7+
show_missing_automerge_label_message = false
8+
automerge_label = "automerge"
9+
10+
[approve]
11+
auto_approve_usernames = ["dependabot", "renovate"]

0 commit comments

Comments
 (0)