TrueChartsClone/.github/renovate.json5

143 lines
3.9 KiB
Plaintext

{
"enabled": true,
"dependencyDashboard": true,
"dependencyDashboardTitle": "Renovate Dashboard",
"assigneesFromCodeOwners": true,
"reviewersFromCodeOwners": true,
"suppressNotifications": ["prIgnoreNotification"],
"rebaseWhen": "conflicted",
"prConcurrentLimit": 7,
"pinDigests": true,
"helm-values": {
"fileMatch": ["charts/.+/.*values\\.yaml$", "charts/.+/SCALE/.*_values\\.yaml$"]
},
"helmv3": {
"fileMatch": ["charts/.+/Chart\\.yaml$"]
},
"packageRules": [
// Setup datasources for dep updates
{
"datasources": ["helm"],
"matchManagers": ["helmv3"],
"commitMessageTopic": "Helm chart {{depName}}"
},
// global docker datasource settings
{
"datasources": ["docker"],
"matchManagers": ["helm-values"],
"enabled": true,
"pinDigests": true,
"commitMessageTopic": "container image {{depName}}",
"commitMessageExtra": "to {{#if isSingleVersion}}v{{{newVersion}}}{{else}}{{{newValue}}}{{/if}}",
"matchUpdateTypes": ["major", "minor", "patch"],
"postUpgradeTasks": {
"commands": [
"sed -i \"s/^version:.*/version: $(grep '^version:' Chart.yaml | awk '{print $2}' | awk -F '[.\"]' '{$NF = $NF + 1;} 1' | sed 's/ /./g')/\" Chart.yaml",
],
"fileFilters": ["Chart.yaml"],
"executionMode": "branch"
},
},
//
// helm deps
//
{
"matchDatasources": ["helm"],
"updateTypes": ["major"],
"automerge": false,
"bumpVersion": "major",
"labels": ["dependency/helm/major"],
"groupName": ["dependency helm major"],
"paths": ["charts/dependency/"],
},
{
"matchDatasources": ["helm"],
"automerge": true,
"matchUpdateTypes": [
"minor",
"patch"
],
"bumpVersion": "patch",
"labels": ["dependency/helm/non-major"],
"paths": ["charts/dependency/"],
"groupName": "dependency helm non-major"
},
//
// helm charts
//
{
"matchDatasources": ["helm"],
"updateTypes": ["major"],
"bumpVersion": "major",
"labels": ["general/helm/major"],
"groupName": ["general helm major"],
"paths": ["charts/incubator/", "charts/dev/", "charts/stable/", "charts/core/"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["helm"],
"automerge": false,
"matchUpdateTypes": [
"minor",
"patch"
],
"bumpVersion": "patch",
"labels": ["general/helm/non-major"],
"groupName": "general helm non-major",
"paths": ["charts/incubator/", "charts/dev/", "charts/stable/", "charts/core/"],
"schedule": [
"on tuesday"
]
},
//
// Tag updates for semantic tags
//
{
"matchDatasources": ["docker"],
"updateTypes": ["major"],
"bumpVersion": "patch",
"labels": ["tag/major"],
"groupName": ["major docker"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["docker"],
"automerge": false,
"matchUpdateTypes": [
"minor",
"patch",
"digest"
],
"bumpVersion": "patch",
"labels": ["tag/non-major"],
"groupName": ["non-major docker"],
"schedule": [
"on tuesday"
]
},
//
// Version strategies
//
// Versioning for linuxserver two-three digit container versions
{
"packagePatterns": ["^linuxserver\\/","^deepquestai\\/"],
"versionScheme": "regex:^(?<compatibility>.*?(\\d+\\.)??)(?<major>\\d+)\\.(?<minor>\\d+)\\.?(?<patch>\\d+)?(-r?p?\\d)?$"
},
// Versioning for slightly problematic container versions
{
"matchDatasources": ["docker"],
"versioning": "loose",
"matchPackageNames": [
"ghcr.io/k8s-at-home/plex",
"ghcr.io/linuxserver/calibre",
"ghcr.io/k8s-at-home/qbittorrent",
"sirfragalot/hyperion.ng",
],
},
]
}