Skip to content

Commit

Permalink
renovate: try to group dependency updates on single PR
Browse files Browse the repository at this point in the history
Since we have tried to group all dependencies on a single PR we can
remove the more specific ones such as "golang-images" and
"alpine-images".

For the "spire-images", we don't need to defined an minimum
"allowedVersion" for the main branch since renovate will not downgrade
versions. Same logic was applied for the "docker.io/library/busybox".

For the kindest images, there is also no need to upgrade them separately
since they can be grouped together with the other dependencies.

Signed-off-by: André Martins <[email protected]>
  • Loading branch information
aanm committed Feb 20, 2024
1 parent 6964ac0 commit 8efcc9c
Showing 1 changed file with 33 additions and 88 deletions.
121 changes: 33 additions & 88 deletions .github/renovate.json5
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,12 @@
],
"pinDigests": true,
"ignorePresets": [":prHourlyLimit2"],
"separateMajorMinor": true,
"separateMultipleMajor": true,
"separateMinorPatch": true,
// We don't want to separate major and minor upgrades in separate PRs since
// we can upgrade them together in a single PR.
"separateMajorMinor": false,
// We don't want to separate minor patch upgrades in separate PRs since
// we can upgrade them together in a single PR.
"separateMinorPatch": false,
"pruneStaleBranches": true,
"baseBranches": [
"main",
Expand All @@ -70,28 +73,28 @@
"stopUpdatingLabel": "renovate/stop-updating",
"packageRules": [
{
"groupName": "all github action dependencies",
"groupSlug": "all-github-action",
"matchPaths": [
".github/workflows/**"
],
"excludeDepNames": [
"cilium/little-vm-helper",
"quay.io/lvh-images/complexity-test",
"quay.io/lvh-images/kind",
"quay.io/cilium/kindest-node"
],
// Try to group all updates for all dependencies in a single PR. More
// specific packageRules are followed by this one.
"matchUpdateTypes": [
"major",
"minor",
"digest",
"patch",
"pin",
"pinDigest"
"pinDigest",
"digest",
"lockFileMaintenance",
"rollback",
"bump",
"replacement",
],
"groupName": "all-dependencies"
},
{
"groupName": "all github action dependencies",
"groupSlug": "all-github-action",
"matchPaths": [
".github/**"
],
"schedule": [
"on monday"
]
},
{
"matchPaths": [
Expand All @@ -113,14 +116,6 @@
// update source import paths on major updates
"gomodUpdateImportPaths"
],
"matchUpdateTypes": [
"major",
"minor",
"digest",
"patch",
"pin",
"pinDigest"
],
matchBaseBranches: [
"main"
]
Expand Down Expand Up @@ -198,6 +193,8 @@
]
},
{
// Grouped these together because they require a re-creation of the base
// image.
"groupName": "base-images",
"matchFiles": [
"images/builder/Dockerfile",
Expand All @@ -207,44 +204,6 @@
"docker.io/library/golang"
],
},
{
// Images that directly use docker.io/library/golang for building.
"groupName": "golang-images",
"matchFiles": [
"contrib/backporting/Dockerfile",
"images/cilium-docker-plugin/Dockerfile",
"images/clustermesh-apiserver/Dockerfile",
"images/hubble-relay/Dockerfile",
"images/operator/Dockerfile",
"images/kvstoremesh/Dockerfile"
],
},
{
// Images that directly use docker.io/library/alpine for building.
"groupName": "alpine-images",
"matchFiles": [
"contrib/coccinelle/Dockerfile",
"images/cache/Dockerfile",
"images/clustermesh-apiserver/Dockerfile",
"images/hubble-relay/Dockerfile",
"images/operator/Dockerfile",
"images/kvstoremesh/Dockerfile"
],
},
{
"groupName": "spire-images",
"matchFiles": [
"install/kubernetes/cilium/values.yaml.tmpl"
],
"matchPackageNames": [
"ghcr.io/spiffe/spire-agent",
"ghcr.io/spiffe/spire-server"
],
"matchBaseBranches": [
"main"
],
"allowedVersions": ">1.6"
},
{
"groupName": "spire-images",
"matchFiles": [
Expand Down Expand Up @@ -280,15 +239,6 @@
"v1.12"
],
},
{
"matchPackageNames": [
"docker.io/library/busybox"
],
"allowedVersions": ">=1.35",
"matchPaths": [
"install/kubernetes/cilium/templates/spire/**"
]
},
{
"matchPackageNames": [
"docker.io/library/golang",
Expand Down Expand Up @@ -347,6 +297,15 @@
"v1.12"
]
},
{
"matchPackageNames": [
"gcr.io/etcd-development/etcd"
],
"allowedVersions": "<3.16",
"matchBaseBranches": [
"v1.15"
]
},
{
"matchDepNames": [
"golang.zx2c4.com/wireguard"
Expand Down Expand Up @@ -455,20 +414,6 @@
"main"
],
},
{
"groupName": "all kind-images main",
"groupSlug": "all-kind-images-main",
"matchPackageNames": [
"kindest/node",
"quay.io/cilium/kindest-node"
],
"matchUpdateTypes": [
"digest",
"patch",
"pin",
"pinDigest"
],
},
{
// Do not allow any updates for major.minor, they will be done by maintainers
"enabled": false,
Expand Down

0 comments on commit 8efcc9c

Please sign in to comment.