Workaround Presets
workarounds:all¶
Apply crowd-sourced workarounds for known problems with packages.
{
"extends": [
"workarounds:mavenCommonsAncientVersion",
"workarounds:ignoreSpringCloudNumeric",
"workarounds:ignoreWeb3jCoreWithOldReleaseTimestamp",
"workarounds:ignoreHttp4sDigestMilestones",
"workarounds:typesNodeVersioning",
"workarounds:nodeDockerVersioning",
"workarounds:doNotUpgradeFromAlpineStableToEdge",
"workarounds:supportRedHatImageVersion",
"workarounds:javaLTSVersions",
"workarounds:disableEclipseLifecycleMapping",
"workarounds:disableMavenParentRoot",
"workarounds:containerbase",
"workarounds:bitnamiDockerImageVersioning",
"workarounds:k3sKubernetesVersioning",
"workarounds:rke2KubernetesVersioning",
"workarounds:libericaJdkDockerVersioning"
],
"ignoreDeps": []
}
workarounds:bitnamiDockerImageVersioning¶
Use custom regex versioning for bitnami images
{
"packageRules": [
{
"matchCurrentValue": "/^(?<major>\\d+)(?:\\.(?<minor>\\d+)(?:\\.(?<patch>\\d+))?)?-(?<compatibility>.+)-(?<build>\\d+)(?:-r(?<revision>\\d+))?$/",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"bitnami/**",
"docker.io/bitnami/**",
"gcr.io/bitnami-containers/**"
],
"versioning": "regex:^(?<major>\\d+)(?:\\.(?<minor>\\d+)(?:\\.(?<patch>\\d+))?)?(:?-(?<compatibility>.+)-(?<build>\\d+)(?:-r(?<revision>\\d+))?)?$"
}
]
}
workarounds:containerbase¶
Add some containerbase overrides.
{
"packageRules": [
{
"description": "Use node versioning for `(containerbase|renovate)/node` images",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"/^(?:(?:docker|ghcr)\\.io/)?(?:containerbase|renovate)/node$/"
],
"versioning": "node"
}
]
}
workarounds:disableEclipseLifecycleMapping¶
Disable Eclipse m2e lifecycle-mapping placeholder package.
{
"packageRules": [
{
"enabled": false,
"matchDatasources": [
"maven"
],
"matchPackageNames": [
"org.eclipse.m2e:lifecycle-mapping"
]
}
]
}
workarounds:disableMavenParentRoot¶
Avoid version fetching for Maven packages detected as project root.
{
"packageRules": [
{
"enabled": false,
"matchDepTypes": [
"parent-root"
],
"matchManagers": [
"maven"
]
}
]
}
workarounds:doNotUpgradeFromAlpineStableToEdge¶
Do not upgrade from Alpine stable to edge.
{
"packageRules": [
{
"allowedVersions": "<20000000",
"matchCurrentVersion": "!/^\\d{8}$/",
"matchDatasources": [
"docker"
],
"matchDepNames": [
"alpine"
]
},
{
"allowedVersions": "<20000000",
"matchCurrentVersion": "!/^\\d{8}$/",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"alpine"
]
}
]
}
workarounds:ignoreHttp4sDigestMilestones¶
Ignore http4s
digest-based 1.x
milestones.
{
"packageRules": [
{
"allowedVersions": "!/^1\\.0-\\d+-[a-fA-F0-9]{7}$/",
"matchManagers": [
"sbt"
],
"matchPackageNames": [
"org.http4s:**"
]
}
]
}
workarounds:ignoreSpringCloudNumeric¶
Ignore spring cloud 1.x
releases.
{
"packageRules": [
{
"allowedVersions": "/^[A-Z]/",
"matchDatasources": [
"maven"
],
"matchPackageNames": [
"org.springframework.cloud:spring-cloud-starter-parent"
]
}
]
}
workarounds:ignoreWeb3jCoreWithOldReleaseTimestamp¶
Ignore web3j
5.0.0
release.
{
"packageRules": [
{
"allowedVersions": "!/^5\\.0\\.0/",
"matchDatasources": [
"maven"
],
"matchPackageNames": [
"org.web3j:core"
]
}
]
}
workarounds:javaLTSVersions¶
Limit Java runtime versions to LTS releases.
{
"packageRules": [
{
"allowedVersions": "/^(?:8|11|17|21)(?:\\.|-|$)/",
"description": "Limit Java runtime versions to LTS releases. To receive all major releases add `workarounds:javaLTSVersions` to the `ignorePresets` array.",
"matchDatasources": [
"docker",
"java-version"
],
"matchPackageNames": [
"eclipse-temurin",
"amazoncorretto",
"adoptopenjdk",
"openjdk",
"java",
"java-jre",
"sapmachine",
"/^azul/zulu-openjdk/",
"/^bellsoft/liberica-openj(dk|re)-/",
"/^cimg/openjdk/"
],
"versioning": "regex:^(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>(\\d\\.?)+)(LTS)?)?(-(?<compatibility>.*))?$"
},
{
"allowedVersions": "/^(?:8|11|17|21)(?:\\.|-|$)/",
"description": "Limit Java runtime versions to LTS releases. To receive all major releases add `workarounds:javaLTSVersions` to the `ignorePresets` array.",
"matchDatasources": [
"docker",
"java-version"
],
"matchDepNames": [
"eclipse-temurin",
"amazoncorretto",
"adoptopenjdk",
"openjdk",
"java",
"java-jre",
"sapmachine"
],
"versioning": "regex:^(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>(\\d\\.?)+)(LTS)?)?(-(?<compatibility>.*))?$"
},
{
"allowedVersions": "/^(?:jdk|jdk-all|jre)-(?:8|11|17|21)(?:\\.|-|$)/",
"description": "Limit Java runtime versions to LTS releases. To receive all major releases add `workarounds:javaLTSVersions` to the `ignorePresets` array.",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"bellsoft/liberica-runtime-container"
]
}
]
}
workarounds:k3sKubernetesVersioning¶
Use custom regex versioning for k3s-io/k3s
{
"packageRules": [
{
"matchDatasources": [
"github-releases"
],
"matchPackageNames": [
"k3s-io/k3s"
],
"versioning": "regex:^v(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+)(?:-(?<prerelease>[a-z]+\\d+))?(?<compatibility>\\+k3s)(?<build>\\d+)$"
}
]
}
workarounds:libericaJdkDockerVersioning¶
Use custom regex versioning for bellsoft/liberica-runtime-container
{
"packageRules": [
{
"description": "Liberica JDK Lite version optimized for the Cloud",
"matchCurrentValue": "/^jdk-[^a][^l]{2}/",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"bellsoft/liberica-runtime-container"
],
"versioning": "regex:^jdk-(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>(\\d\\.?)+))?(-(?<compatibility>.*))?$"
},
{
"description": "Liberica JDK that can be used to create a custom runtime with a help of jlink tool",
"matchCurrentValue": "/^jdk-all/",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"bellsoft/liberica-runtime-container"
],
"versioning": "regex:^jdk-all-(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>(\\d\\.?)+))?(-(?<compatibility>.*))?$"
},
{
"description": "Liberica JRE (only the runtime without the rest of JDK tools) for running Java applications",
"matchCurrentValue": "/^jre-/",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"bellsoft/liberica-runtime-container"
],
"versioning": "regex:^jre-(?<major>\\d+)?(\\.(?<minor>\\d+))?(\\.(?<patch>\\d+))?([\\._+](?<build>(\\d\\.?)+))?(-(?<compatibility>.*))?$"
}
]
}
workarounds:mavenCommonsAncientVersion¶
Fix some problems with very old Maven commons versions.
{
"packageRules": [
{
"allowedVersions": "!/^200\\d{5}(\\.\\d+)?/",
"matchDatasources": [
"maven",
"sbt-package"
],
"matchPackageNames": [
"commons-**"
]
}
]
}
workarounds:nodeDockerVersioning¶
Use node versioning for node
docker images.
{
"packageRules": [
{
"matchDatasources": [
"docker"
],
"matchDepNames": [
"node"
],
"versionCompatibility": "^(?<version>[^-]+)(?<compatibility>-.*)?$",
"versioning": "node"
}
]
}
workarounds:rke2KubernetesVersioning¶
Use custom regex versioning for rancher/rke2
{
"packageRules": [
{
"matchDatasources": [
"github-releases"
],
"matchPackageNames": [
"rancher/rke2"
],
"versioning": "regex:^v(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+)(?:-(?<prerelease>[a-z]+\\d+))?(?<compatibility>\\+rke2r)(?<build>\\d+)$"
}
]
}
workarounds:supportRedHatImageVersion¶
Use specific versioning for Red Hat-maintained container images.
{
"packageRules": [
{
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"registry.access.redhat.com/rhel",
"registry.access.redhat.com/rhel-atomic",
"registry.access.redhat.com/rhel-init",
"registry.access.redhat.com/rhel-minimal",
"registry.access.redhat.com/rhceph/**",
"registry.access.redhat.com/rhgs3/**",
"registry.access.redhat.com/rhel7**",
"registry.access.redhat.com/rhel8/**",
"registry.access.redhat.com/rhel9/**",
"registry.access.redhat.com/rhscl/**",
"registry.access.redhat.com/ubi*{,/}**",
"redhat/**"
],
"versioning": "redhat"
}
]
}
workarounds:typesNodeVersioning¶
Use node versioning for @types/node
.
{
"packageRules": [
{
"matchManagers": [
"npm"
],
"matchPackageNames": [
"@types/node"
],
"versioning": "node"
}
]
}