TrueChartsClone/.github/renovate.json5

151 lines
4.2 KiB
Plaintext

{
"enabled": true,
"dependencyDashboard": true,
"dependencyDashboardTitle": "Renovate Dashboard",
"assigneesFromCodeOwners": true,
"reviewersFromCodeOwners": true,
"suppressNotifications": ["prIgnoreNotification"],
"rebaseWhen": "conflicted",
"prConcurrentLimit": 5,
"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}}",
"separateMinorPatch": true
},
// global docker datasource settings
{
"datasources": ["docker"],
"matchManagers": ["helm-values"],
"enabled": true,
"commitMessageTopic": "container image {{depName}}",
"commitMessageExtra": "to {{#if isSingleVersion}}v{{{newVersion}}}{{else}}{{{newValue}}}{{/if}}",
"matchUpdateTypes": ["major", "minor", "patch"],
},
//
// Common library dep
//
{
"matchDatasources": ["helm"],
"updateTypes": ["major"],
"bumpVersion": "major",
"labels": ["dependency/major"],
"packageNames": ["common"],
"groupName": ["internal major dep"]
},
{
"matchDatasources": ["helm"],
"updateTypes": ["minor"],
"bumpVersion": "minor",
"labels": ["dependency/minor"],
"packageNames": ["common"],
"groupName": ["internal minor dep"]
},
{
"matchDatasources": ["helm"],
"automerge": true,
"updateTypes": ["patch"],
"bumpVersion": "patch",
"labels": ["dependency/patch"],
"packageNames": ["common"],
"groupName": ["internal patch dep"]
},
//
// External helm deps
//
{
"matchDatasources": ["helm"],
"commitMessagePrefix": "[{{{parentDir}}}]",
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
"updateTypes": ["major"],
"bumpVersion": "major",
"labels": ["dependency/major"],
"excludePackageNames": ["common"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["helm"],
"updateTypes": ["minor"],
"bumpVersion": "minor",
"labels": ["dependency/minor"],
"excludePackageNames": ["common"],
"groupName": ["external minor dep"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["helm"],
"updateTypes": ["patch"],
"bumpVersion": "patch",
"labels": ["dependency/patch"],
"excludePackageNames": ["common"],
"groupName": ["external patch dep"],
"schedule": [
"on tuesday"
]
},
//
// Tag updates for semantic tags
//
{
"matchDatasources": ["docker"],
"commitMessagePrefix": "[{{{parentDir}}}]",
"branchTopic": "{{{parentDir}}}-{{{depNameSanitized}}}-{{{newMajor}}}{{#if isPatch}}.{{{newMinor}}}{{/if}}.x{{#if isLockfileUpdate}}-lockfile{{/if}}",
"updateTypes": ["major"],
"bumpVersion": "major",
"labels": ["tag/major"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["docker"],
"updateTypes": ["minor"],
"bumpVersion": "minor",
"labels": ["tag/minor"],
"groupName": ["minor"],
"schedule": [
"on tuesday"
]
},
{
"matchDatasources": ["docker"],
"updateTypes": ["patch"],
"bumpVersion": "patch",
"labels": ["tag/patch"],
"groupName": ["patch"],
"schedule": [
"on tuesday"
]
},
//
// Version strategies
//
// Versioning for linuxserver two-three digit container versions
{
"packagePatterns": ["^linuxserver\\/"],
"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/k8s-at-home/qbittorrent",
],
},
]
}