diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 86adc3e31..1d9f9d4ef 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -41,7 +41,16 @@ { "matchPackageNames": "**/renovate", "extends": ["schedule:weekly"] - } + }, + { + // The default "docker" versioning will try to restrict upgrades to versions that do not change everything after + // a dash (-) for the current tag, as this typically indicates the "flavor" (e.g. postgresql:17.1-alpine will not + // be upgraded to postgresql:17.2-debian). + // This image in particular has lots of dashes and does not follow this convention, so we force "loose" + // versioning which is pretty much an alphabetical sort. + "matchPackageNames": ["ghcr.io/grafana/chromium-swiftshader-alpine"], + "versioning": "loose", + }, ], "customManagers": [ @@ -70,22 +79,6 @@ "(?:^|\\n)[ \\t]*K6_VERSION\\s*:=\\s*(?\\S+)[ \\t]*(?:$|\\n)" ] }, - { - // Update pinned alpine packages in Dockerfile. - "customType": "regex", - "fileMatch": [ "Dockerfile", "Dockerfile.build" ], - "matchStrings": [ - // Lines that loosely look like "apk add --repository community --arch value something=version". - // To keep this regex simple, only one package per "apk add" is supported. - "\\bapk\\b.+?\\badd\\b.+?(--repository|-X)[ =\\t]+(?[a-z]+)\\s+(--arch[ =\\t]+(?\\w+)\\s+)?(?[-\\w]+?)=(?[-.\\w]+)" - ], - "versioningTemplate": "loose", // The most lenient versioning renovate supports. - // We use different datasources for main and community, as alpine serves them in different URLs. - // Specifying --arch is optional, if not found it will default to x86_64. - "datasourceTemplate": "custom.alpine-{{alpineRepo}}-{{#if arch}}{{arch}}{{else}}x86_64{{/if}}", - // Extracted "versions" include the package name, so here we strip that prefix using a regex. - "extractVersionTemplate": "{{depName}}-(?.+).apk", - }, { // Update renovate version in GHA workflow file. "customType": "regex", @@ -99,25 +92,5 @@ "RENOVATE_IMAGE=ghcr.io/renovatebot/renovate:(?[^@\\s]+)(?:@(?\\S+))?" ] } - ], - "customDatasources": { - // Use alpine HTML mirror page as a repository. When using `html` format, renovate produces version strings from - // all links present in the page. The version is extracted from that using extractVersionTemplate above. - "alpine-main-x86_64": { - "defaultRegistryUrlTemplate": "https://dl-cdn.alpinelinux.org/alpine/latest-stable/main/x86_64/", - "format": "html", - }, - "alpine-community-x86_64": { - "defaultRegistryUrlTemplate": "https://dl-cdn.alpinelinux.org/alpine/latest-stable/community/x86_64/", - "format": "html", - }, - "alpine-main-aarch64": { - "defaultRegistryUrlTemplate": "https://dl-cdn.alpinelinux.org/alpine/latest-stable/main/aarch64/", - "format": "html", - }, - "alpine-community-aarch64": { - "defaultRegistryUrlTemplate": "https://dl-cdn.alpinelinux.org/alpine/latest-stable/community/aarch64/", - "format": "html", - }, - }, + ] }