{ "$schema": "https://docs.renovatebot.com/renovate-schema.json", "extends": ["config:recommended"], "enabledManagers": ["dockerfile", "docker-compose", "kubernetes", "helm-values", "custom.regex"], "helm-values": { "managerFilePatterns": ["/k8s/.+values\\.ya?ml$/"] }, "kubernetes": { "managerFilePatterns": ["/k8s/.+\\.ya?ml$/"] }, "customManagers": [ { "customType": "regex", "description": "singlesource: playwright npm version pinned in npx command (k8s + compose)", "fileMatch": ["^edu_master/k8s/playwright\\.yaml$", "^edu_master/compose\\.yaml$"], "matchStrings": ["playwright@(?\\d+\\.\\d+\\.\\d+)"], "datasourceTemplate": "npm", "depNameTemplate": "playwright" }, { "customType": "regex", "description": "singlesource: PLAYWRIGHT_VERSION file", "fileMatch": ["^edu_master/PLAYWRIGHT_VERSION$"], "matchStrings": ["^(?\\d+\\.\\d+\\.\\d+)$"], "datasourceTemplate": "pypi", "depNameTemplate": "playwright" } ], "packageRules": [ { "description": "singlesource playwright - use whichever version is found, keep docker+pypi+npm in sync", "matchPackageNames": ["playwright", "mcr.microsoft.com/playwright"], "groupName": "playwright singlesource", "groupSlug": "playwright" }, { "description": "playwright must not automerge - version skew breaks WS handshake (checker.py:1523 vs playwright.yaml:20)", "matchPackageNames": ["playwright", "mcr.microsoft.com/playwright"], "automerge": false }, { "description": "Keep private homelab images unchanged", "matchDatasources": ["docker"], "matchPackageNames": ["/gcr\\.forust\\.xyz\\/forust\\/.+/"], "enabled": false }, { "description": "Require approval for major upgrades", "matchUpdateTypes": ["major"], "dependencyDashboardApproval": true, "automerge": false }, { "description": "Group container patch updates", "matchDatasources": ["docker"], "matchUpdateTypes": ["patch"], "groupName": "container patch updates" } ] }