The custom regex manager matched all nextcloud_image entries with the same depName, causing Renovate to bump all matrix entries (NC 31, 32, 33) to the latest version instead of only the targeted major. Fix by capturing nextcloud_version to create version-specific dep names (nextcloud-31, nextcloud-32, nextcloud-33) with allowedVersions rules constraining each to its own major. Also pins docker-compose.yml to 32.x and removes redundant inline # renovate: comments that could cause duplicate matching. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
52 lines
1.5 KiB
JSON
52 lines
1.5 KiB
JSON
{
|
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
"extends": [
|
|
"config:best-practices",
|
|
"mergeConfidence:all-badges"
|
|
],
|
|
"dependencyDashboard": true,
|
|
"packageRules": [
|
|
{
|
|
"matchPackageNames": [
|
|
"pillow"
|
|
],
|
|
"allowedVersions": "<12.0.0"
|
|
},
|
|
{
|
|
"description": "Pin each Nextcloud matrix entry to its own major version",
|
|
"matchDepNames": ["nextcloud-31"],
|
|
"allowedVersions": "/^31\\./"
|
|
},
|
|
{
|
|
"matchDepNames": ["nextcloud-32"],
|
|
"allowedVersions": "/^32\\./"
|
|
},
|
|
{
|
|
"matchDepNames": ["nextcloud-33"],
|
|
"allowedVersions": "/^33\\./"
|
|
},
|
|
{
|
|
"description": "Pin docker-compose.yml Nextcloud image to 32.x",
|
|
"matchPackageNames": ["docker.io/library/nextcloud"],
|
|
"matchFileNames": ["docker-compose.yml"],
|
|
"allowedVersions": "/^32\\./"
|
|
}
|
|
],
|
|
"customManagers": [
|
|
{
|
|
"customType": "regex",
|
|
"description": "Nextcloud version matrix pins in CI — each entry gets a version-specific dep name",
|
|
"managerFilePatterns": [
|
|
"/^\\.github/workflows/test\\.yml$/"
|
|
],
|
|
"matchStrings": [
|
|
"nextcloud_version:\\s*\"(?<major>\\d+)\"\\s*\\n\\s*#?\\s*nextcloud_image:\\s*\"(?<packageName>[^:]+):(?<currentValue>[^@]+)@(?<currentDigest>sha256:[a-f0-9]+)\""
|
|
],
|
|
"depNameTemplate": "nextcloud-{{{major}}}",
|
|
"packageNameTemplate": "docker.io/library/nextcloud",
|
|
"datasourceTemplate": "docker",
|
|
"versioningTemplate": "docker"
|
|
}
|
|
]
|
|
}
|