diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 0166549602c..fb5d75c8bbe 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -1,203 +1,322 @@ { - "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "extends": [ - "config:recommended", - "docker:enableMajor", - ":disableRateLimiting", - ":dependencyDashboard", - ":semanticCommits", - ":automergeBranch" + $schema: 'https://docs.renovatebot.com/renovate-schema.json', + extends: [ + 'config:recommended', + 'docker:enableMajor', + ':disableRateLimiting', + ':dependencyDashboard', + ':semanticCommits', + ':automergeBranch', ], - "dependencyDashboard": true, - "dependencyDashboardTitle": "Renovate Dashboard 🤖", - "suppressNotifications": ["prEditedNotification", "prIgnoreNotification"], - "rebaseWhen": "conflicted", - "schedule": ["every weekend"], - "ignorePaths": ["**/*.sops.*"], - "flux": { - "fileMatch": ["(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$"] + dependencyDashboard: true, + dependencyDashboardTitle: 'Renovate Dashboard 🤖', + suppressNotifications: [ + 'prEditedNotification', + 'prIgnoreNotification', + ], + rebaseWhen: 'conflicted', + schedule: [ + 'every weekend', + ], + ignorePaths: [ + '**/*.sops.*', + ], + flux: { + fileMatch: [ + '(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$', + ], }, - "helm-values": { - "fileMatch": ["(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$"] + 'helm-values': { + fileMatch: [ + '(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$', + ], }, - "helmfile": { - "fileMatch": ["(^|/)helmfile\\.ya?ml(?:\\.j2)?$"] + helmfile: { + fileMatch: [ + '(^|/)helmfile\\.ya?ml(?:\\.j2)?$', + ], }, - "kubernetes": { - "fileMatch": ["(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$"] + kubernetes: { + fileMatch: [ + '(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$', + ], }, - "kustomize": { - "fileMatch": ["(^|/)kustomization\\.ya?ml(?:\\.j2)?$"] + kustomize: { + fileMatch: [ + '(^|/)kustomization\\.ya?ml(?:\\.j2)?$', + ], }, - "pip_requirements": { - "fileMatch": ["(^|/)[\\w-]*requirements(-\\w+)?\\.(txt|pip)(?:\\.j2)?$"] + pip_requirements: { + fileMatch: [ + '(^|/)[\\w-]*requirements(-\\w+)?\\.(txt|pip)(?:\\.j2)?$', + ], }, - // commit message topics - "commitMessageTopic": "{{depName}}", - "commitMessageExtra": "to {{newVersion}}", - "commitMessageSuffix": "", - // package rules - "packageRules": [ - // automerge - { - "description": ["Auto merge Github Actions"], - "matchManagers": ["github-actions"], - "automerge": true, - "automergeType": "branch", - "ignoreTests": true, - "matchUpdateTypes": ["minor", "patch"] - }, - // groups - { - "description": ["Flux Group"], - "groupName": "Flux", - "matchPackagePatterns": ["fluxcd"], - "matchDatasources": ["docker", "github-tags"], - "versioning": "semver", - "group": { - "commitMessageTopic": "{{{groupName}}} group" + commitMessageTopic: '{{depName}}', + commitMessageExtra: 'to {{newVersion}}', + commitMessageSuffix: '', + packageRules: [ + { + description: [ + 'Auto merge Github Actions', + ], + matchManagers: [ + 'github-actions', + ], + automerge: true, + automergeType: 'branch', + ignoreTests: true, + matchUpdateTypes: [ + 'minor', + 'patch', + ], + }, + { + description: [ + 'Flux Group', + ], + groupName: 'Flux', + matchDatasources: [ + 'docker', + 'github-tags', + ], + versioning: 'semver', + group: { + commitMessageTopic: '{{{groupName}}} group', }, - "separateMinorPatch": true + separateMinorPatch: true, + matchPackageNames: [ + '/fluxcd/', + ], }, { - "description": ["Talos Group"], - "groupName": "Talos", - "matchPackagePatterns": [ - "siderolabs/talosctl", - "siderolabs/installer" + description: [ + 'Talos Group', ], - "matchDatasources": ["docker"], - "group": { - "commitMessageTopic": "{{{groupName}}} group" + groupName: 'Talos', + matchDatasources: [ + 'docker', + ], + group: { + commitMessageTopic: '{{{groupName}}} group', }, - "separateMinorPatch": true + separateMinorPatch: true, + matchPackageNames: [ + '/siderolabs/talosctl/', + '/siderolabs/installer/', + ], }, - // commit message topics { - "matchDatasources": ["helm"], - "commitMessageTopic": "chart {{depName}}" + matchDatasources: [ + 'helm', + ], + commitMessageTopic: 'chart {{depName}}', }, { - "matchDatasources": ["docker"], - "commitMessageTopic": "image {{depName}}" + matchDatasources: [ + 'docker', + ], + commitMessageTopic: 'image {{depName}}', }, - // commit messages { - "matchDatasources": ["docker"], - "matchUpdateTypes": ["major"], - "commitMessagePrefix": "feat(container)!: " + matchDatasources: [ + 'docker', + ], + matchUpdateTypes: [ + 'major', + ], + commitMessagePrefix: 'feat(container)!: ', }, { - "matchDatasources": ["docker"], - "matchUpdateTypes": ["minor"], - "semanticCommitType": "feat", - "semanticCommitScope": "container" + matchDatasources: [ + 'docker', + ], + matchUpdateTypes: [ + 'minor', + ], + semanticCommitType: 'feat', + semanticCommitScope: 'container', }, { - "matchDatasources": ["docker"], - "matchUpdateTypes": ["patch"], - "semanticCommitType": "fix", - "semanticCommitScope": "container" + matchDatasources: [ + 'docker', + ], + matchUpdateTypes: [ + 'patch', + ], + semanticCommitType: 'fix', + semanticCommitScope: 'container', }, { - "matchDatasources": ["docker"], - "matchUpdateTypes": ["digest"], - "semanticCommitType": "chore", - "semanticCommitScope": "container" + matchDatasources: [ + 'docker', + ], + matchUpdateTypes: [ + 'digest', + ], + semanticCommitType: 'chore', + semanticCommitScope: 'container', }, { - "matchDatasources": ["helm"], - "matchUpdateTypes": ["major"], - "commitMessagePrefix": "feat(helm)!: " + matchDatasources: [ + 'helm', + ], + matchUpdateTypes: [ + 'major', + ], + commitMessagePrefix: 'feat(helm)!: ', }, { - "matchDatasources": ["helm"], - "matchUpdateTypes": ["minor"], - "semanticCommitType": "feat", - "semanticCommitScope": "helm" + matchDatasources: [ + 'helm', + ], + matchUpdateTypes: [ + 'minor', + ], + semanticCommitType: 'feat', + semanticCommitScope: 'helm', }, { - "matchDatasources": ["helm"], - "matchUpdateTypes": ["patch"], - "semanticCommitType": "fix", - "semanticCommitScope": "helm" + matchDatasources: [ + 'helm', + ], + matchUpdateTypes: [ + 'patch', + ], + semanticCommitType: 'fix', + semanticCommitScope: 'helm', }, { - "matchDatasources": ["github-releases", "github-tags"], - "matchUpdateTypes": ["major"], - "commitMessagePrefix": "feat(github-release)!: " + matchDatasources: [ + 'github-releases', + 'github-tags', + ], + matchUpdateTypes: [ + 'major', + ], + commitMessagePrefix: 'feat(github-release)!: ', }, { - "matchDatasources": ["github-releases", "github-tags"], - "matchUpdateTypes": ["minor"], - "semanticCommitType": "feat", - "semanticCommitScope": "github-release" + matchDatasources: [ + 'github-releases', + 'github-tags', + ], + matchUpdateTypes: [ + 'minor', + ], + semanticCommitType: 'feat', + semanticCommitScope: 'github-release', }, { - "matchDatasources": ["github-releases", "github-tags"], - "matchUpdateTypes": ["patch"], - "semanticCommitType": "fix", - "semanticCommitScope": "github-release" + matchDatasources: [ + 'github-releases', + 'github-tags', + ], + matchUpdateTypes: [ + 'patch', + ], + semanticCommitType: 'fix', + semanticCommitScope: 'github-release', }, { - "matchManagers": ["github-actions"], - "matchUpdateTypes": ["major"], - "commitMessagePrefix": "feat(github-action)!: " + matchManagers: [ + 'github-actions', + ], + matchUpdateTypes: [ + 'major', + ], + commitMessagePrefix: 'feat(github-action)!: ', }, { - "matchManagers": ["github-actions"], - "matchUpdateTypes": ["minor"], - "semanticCommitType": "feat", - "semanticCommitScope": "github-action" + matchManagers: [ + 'github-actions', + ], + matchUpdateTypes: [ + 'minor', + ], + semanticCommitType: 'feat', + semanticCommitScope: 'github-action', }, { - "matchManagers": ["github-actions"], - "matchUpdateTypes": ["patch"], - "semanticCommitType": "fix", - "semanticCommitScope": "github-action" + matchManagers: [ + 'github-actions', + ], + matchUpdateTypes: [ + 'patch', + ], + semanticCommitType: 'fix', + semanticCommitScope: 'github-action', }, - // labels { - "matchUpdateTypes": ["major"], - "labels": ["type/major"] + matchUpdateTypes: [ + 'major', + ], + labels: [ + 'type/major', + ], }, { - "matchUpdateTypes": ["minor"], - "labels": ["type/minor"] + matchUpdateTypes: [ + 'minor', + ], + labels: [ + 'type/minor', + ], }, { - "matchUpdateTypes": ["patch"], - "labels": ["type/patch"] + matchUpdateTypes: [ + 'patch', + ], + labels: [ + 'type/patch', + ], }, { - "matchDatasources": ["docker"], - "addLabels": ["renovate/container"] + matchDatasources: [ + 'docker', + ], + addLabels: [ + 'renovate/container', + ], }, { - "matchDatasources": ["helm"], - "addLabels": ["renovate/helm"] + matchDatasources: [ + 'helm', + ], + addLabels: [ + 'renovate/helm', + ], }, { - "matchDatasources": ["github-releases", "github-tags"], - "addLabels": ["renovate/github-release"] + matchDatasources: [ + 'github-releases', + 'github-tags', + ], + addLabels: [ + 'renovate/github-release', + ], }, { - "matchManagers": ["github-actions"], - "addLabels": ["renovate/github-action"] - } + matchManagers: [ + 'github-actions', + ], + addLabels: [ + 'renovate/github-action', + ], + }, + ], + customManagers: [ + { + customType: 'regex', + description: [ + 'Process custom dependencies', + ], + fileMatch: [ + '(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$', + ], + matchStrings: [ + 'datasource=(?\\S+) depName=(?\\S+)( repository=(?\\S+))?\\n.+: (&\\S+\\s)?(?\\S+)', + ], + datasourceTemplate: '{{#if datasource}}{{{datasource}}}{{else}}github-releases{{/if}}', + }, ], - // custom managers - "customManagers": [ - { - "customType": "regex", - "description": ["Process custom dependencies"], - "fileMatch": ["(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$"], - "matchStrings": [ - // # renovate: datasource=helm depName=cilium repository=https://helm.cilium.io - // version: 1.15.1 - "datasource=(?\\S+) depName=(?\\S+)( repository=(?\\S+))?\\n.+: (&\\S+\\s)?(?\\S+)" - ], - "datasourceTemplate": "{{#if datasource}}{{{datasource}}}{{else}}github-releases{{/if}}" - } - ] }