1+ {
2+ "$schema" : "https://docs.renovatebot.com/renovate-schema.json" ,
3+ "extends" : [ "config:recommended" ] ,
4+ // The maximum number of PRs to be created in parallel
5+ "prConcurrentLimit" : 5 ,
6+ // The branches renovate should target
7+ "baseBranches" : [ "main" ] ,
8+ "ignorePaths" : [ "design/**" ] ,
9+ "postUpdateOptions" : [ "gomodTidy" ] ,
10+ // By default renovate will auto detect whether semantic commits have been used
11+ // in the recent history and comply with that, we explicitly disable it
12+ "semanticCommits" : "disabled" ,
13+ // All PRs should have a label
14+ "labels" : [ "automated" ] ,
15+ "customManagers" : [
16+ {
17+ // We want a PR to bump golangci-lint versions used through env variables in
18+ // any Github Actions, taking it from the official Github repository tags.
19+ "customType" : "regex" ,
20+ "description" : "Bump golangci-lint version in workflows" ,
21+ "fileMatch" : [ "^\\.github\\/workflows\\/[^/]+\\.ya?ml$" ] ,
22+ "matchStrings" : [
23+ "GOLANGCI_VERSION: '(?<currentValue>.*?)'\\n"
24+ ] ,
25+ "datasourceTemplate" : "github-releases" ,
26+ "depNameTemplate" : "golangci/golangci-lint"
27+ } ,
28+ {
29+ // We want a PR to bump docker buildx versions used through env variables in
30+ // any Github Actions, taking it from the official Github repository releases.
31+ "customType" : "regex" ,
32+ "description" : "Bump Docker Buildx version in workflows" ,
33+ "fileMatch" : [ "^\\.github\\/workflows\\/[^/]+\\.ya?ml$" ] ,
34+ "matchStrings" : [
35+ "DOCKER_BUILDX_VERSION: '(?<currentValue>.*?)'\\n"
36+ ] ,
37+ "datasourceTemplate" : "github-releases" ,
38+ "depNameTemplate" : "docker/buildx"
39+ } ,
40+ {
41+ // We want a PR to bump golangci-lint versions used through make variables in
42+ // the Makefile, taking it from the official Github repository releases.
43+ "customType" : "regex" ,
44+ "description" : "Bump golangci-lint version in the Makefile" ,
45+ "fileMatch" : [ "^Makefile$" , "^\\.github\\/workflows\\/[^/]+\\.ya?ml$" ] ,
46+ "matchStrings" : [ "GOLANGCILINT_VERSION \\??= (?<currentValue>.*?)\\n" ] ,
47+ "datasourceTemplate" : "github-releases" ,
48+ "depNameTemplate" : "golangci/golangci-lint" ,
49+ "extractVersionTemplate" : "^(?<version>.*)$"
50+ } ,
51+ {
52+ // We want a PR to bump up CLI versions used through make variables in
53+ // the Makefile, taking it from the official Github repository releases.
54+ "customType" : "regex" ,
55+ "description" : "Bump up CLI version in the Makefile" ,
56+ "fileMatch" : [ "^Makefile$" ] ,
57+ "matchStrings" : [ "UP_VERSION \\??= (?<currentValue>.*?)\\n" ] ,
58+ "datasourceTemplate" : "github-releases" ,
59+ "depNameTemplate" : "upbound/up"
60+ } ,
61+ {
62+ // We want a PR to bump uptest versions used through make variables in
63+ // the Makefile, taking it from the official Github repository releases.
64+ "customType" : "regex" ,
65+ "description" : "Bump Uptest version in the Makefile" ,
66+ "fileMatch" : [ "^Makefile$" ] ,
67+ "matchStrings" : [ "UPTEST_VERSION \\??= (?<currentValue>.*?)\\n" ] ,
68+ "datasourceTemplate" : "github-releases" ,
69+ "depNameTemplate" : "crossplane/uptest"
70+ } ,
71+ {
72+ // We want a PR to bump kind versions used through make variables in
73+ // the Makefile, taking it from the official Github repository releases.
74+ "customType" : "regex" ,
75+ "description" : "Bump kind version in the Makefile" ,
76+ "fileMatch" : [ "^Makefile$" ] ,
77+ "matchStrings" : [ "KIND_VERSION \\??= (?<currentValue>.*?)\\n" ] ,
78+ "datasourceTemplate" : "github-tags" ,
79+ "depNameTemplate" : "kubernetes-sigs/kind"
80+ } ,
81+ {
82+ // We want a PR to bump Crossplane versions used through make variables in
83+ // the Makefile, taking it from the official Github repository releases.
84+ "customType" : "regex" ,
85+ "description" : "Bump Crossplane version in the Makefile" ,
86+ "fileMatch" : [ "^Makefile$" ] ,
87+ "matchStrings" : [ "CROSSPLANE_VERSION \\??= (?<currentValue>.*?)\\n" ] ,
88+ "datasourceTemplate" : "github-releases" ,
89+ "depNameTemplate" : "crossplane/crossplane" ,
90+ "extractVersionTemplate" : "^(?<version>.*)$"
91+ } ,
92+ {
93+ // We want a PR to bump Crossplane CLI versions used through make variables in
94+ // the Makefile, taking it from the official Github repository releases.
95+ "customType" : "regex" ,
96+ "description" : "Bump Crossplane CLI version in the Makefile" ,
97+ "fileMatch" : [ "^Makefile$" ] ,
98+ "matchStrings" : [ "CROSSPLANE_CLI_VERSION ??= (?<currentValue>.*?)\\n" ] ,
99+ "datasourceTemplate" : "github-releases" ,
100+ "depNameTemplate" : "crossplane/crossplane"
101+ }
102+ ] ,
103+ // PackageRules disabled below should be enabled in case of vulnerabilities
104+ "vulnerabilityAlerts" : { "enabled" : true } ,
105+ "packageRules" : [
106+ {
107+ // We need to ignore k8s.io/client-go older versions as they switched to
108+ // semantic version and old tags are still available in the repo.
109+ "matchDatasources" : [ "go" ] ,
110+ "matchDepNames" : [ "k8s.io/client-go" ] ,
111+ "allowedVersions" : "<1.0"
112+ } ,
113+ {
114+ // We want a single PR for all the patches bumps of kubernetes related
115+ // dependencies, as most of the times these are all strictly related.
116+ "matchDatasources" : [ "go" ] ,
117+ "groupName" : "kubernetes patches" ,
118+ "matchUpdateTypes" : [ "patch" , "digest" ] ,
119+ "matchPackagePrefixes" : [ "k8s.io" , "sigs.k8s.io" ]
120+ } ,
121+ {
122+ // We want dedicated PRs for each minor and major bumps to kubernetes related
123+ // dependencies.
124+ "matchDatasources" : [ "go" ] ,
125+ "matchUpdateTypes" : [ "major" , "minor" ] ,
126+ "matchPackagePrefixes" : [ "k8s.io" , "sigs.k8s.io" ]
127+ } ,
128+ {
129+ // We want dedicated PRs for each bump to non-kubernetes Go dependencies, but
130+ // only if there are known vulnerabilities in the current version.
131+ "matchDatasources" : [ "go" ] ,
132+ "matchPackagePatterns" : [ "*" ] ,
133+ "enabled" : false ,
134+ "excludePackagePrefixes" : [ "k8s.io" , "sigs.k8s.io" ] ,
135+ "matchUpdateTypes" : [ "major" ]
136+ } ,
137+ {
138+ // We want a single PR for all minor and patch bumps to non-kubernetes Go
139+ // dependencies, but only if there are known vulnerabilities in the current
140+ // version.
141+ "matchDatasources" : [ "go" ] ,
142+ "matchPackagePatterns" : [ "*" ] ,
143+ "enabled" : false ,
144+ "excludePackagePrefixes" : [ "k8s.io" , "sigs.k8s.io" ] ,
145+ "matchUpdateTypes" : [ "minor" , "patch" , "digest" ] ,
146+ "groupName" : "all non-major go dependencies"
147+ } ,
148+ {
149+ // We want a single PR for all minor and patch bumps of Github Actions
150+ "matchDepTypes" : [ "action" ] ,
151+ "matchUpdateTypes" : [ "minor" , "patch" ] ,
152+ "groupName" : "all non-major github action" ,
153+ "pinDigests" : true
154+ } ,
155+ {
156+ // We want a single PR for bumping Crossplane and Crossplane CLI versions in CI
157+ "matchDepNames" : [ "crossplane/crossplane" ] ,
158+ "groupName" : "crossplane versions in CI" ,
159+ "groupSlug" : "crossplane-in-ci"
160+ } ,
161+ {
162+ // We want a single PR for bumping golangci-lint versions
163+ "matchDepNames" : [ "golangci/golangci-lint" ] ,
164+ "groupName" : "golangci-lint versions in CI" ,
165+ "groupSlug" : "golangci-lint-in-ci"
166+ } ,
167+ {
168+ // We want dedicated PRs for each major bump to Github Actions
169+ "matchDepTypes" : [ "action" ] ,
170+ "pinDigests" : true
171+ }
172+ ]
173+ }
0 commit comments