renovate-presets/docker.json

59 lines
2.0 KiB
JSON

{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"description": ["Preset for use with all of thegeeklab/* docker images"],
"extends": ["github>thegeeklab/renovate-presets:base"],
"packageRules": [
{
"description": "Set semantic commit scope for docker digests",
"groupName": "docker digests",
"matchDatasources": ["docker"],
"matchUpdateTypes": ["pin", "digest"],
"semanticCommitScope": "docker"
},
{
"description": "Automerge digest updates (usually security patches)",
"groupName": "docker digests",
"extends": ["schedule:daily"],
"matchDatasources": ["docker"],
"matchPackagePatterns": [
"^((amd64|arm32v7|arm64v8)/)?(python|alpine|node|docker|rockylinux|centos|debian|golang)",
"^thegeeklab/(alpine|nginx)"
],
"matchUpdateTypes": ["pin", "digest"],
"automerge": true
},
{
"description": "Automerge helper tools for docker base images",
"groupName": "docker helper tools",
"extends": ["schedule:weekly"],
"matchDatasources": ["github-releases"],
"matchManagers": ["regex"],
"matchPackagePatterns": ["^hairyhenderson", "^aptible", "^thegeeklab"],
"matchUpdateTypes": ["minor", "patch"],
"automerge": true
},
{
"description": "Disable digest pinning for Compose (development only)",
"matchManagers": ["docker-compose"],
"pinDigests": false
},
{
"description": "Disable digest pinning for testdata",
"matchFileNames": ["testdata/**"],
"pinDigests": false
}
],
"customManagers": [
{
"customType": "regex",
"fileMatch": [
"(^|/|\\.)([Dd]ocker|[Cc]ontainer)file$",
"(^|/)([Dd]ocker|[Cc]ontainer)file[^/]*$"
],
"matchStrings": [
"# renovate: datasource=(?<datasource>\\S+) depName=(?<depName>\\S+)( versioning=(?<versioning>.*?))?\\nENV .*?_VERSION=\"\\${.*:-(?<currentValue>.*)}\"\\s"
]
}
]
}