theshire/renovate.json5

227 lines
5.6 KiB
Text

{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended",
"local>jahanson/homelab//.renovate/customManagers.json5",
"local>jahanson/homelab//.renovate/autoMerge.json5"
],
"flux": {
"fileMatch": [
"kubernetes/.+\\.ya?ml$"
]
},
"helm-values": {
"fileMatch": [
"kubernetes/.+\\.ya?ml$"
]
},
"kubernetes": {
"fileMatch": [
"kubernetes/.+\\.ya?ml$"
]
},
"regexManagers": [
{
"description": [
"Process CRD dependencies - Chart and Github Release are the same version"
],
"fileMatch": [
"kubernetes/.+\\.ya?ml$"
],
"matchStrings": [
"# renovate: registryUrl=(?<registryUrl>\\S+) chart=(?<depName>\\S+)\n.*?(?<currentValue>[^-\\s]*)\n",
],
"datasourceTemplate": "helm"
},
{
"description": [
"Generic Docker image Regex manager"
],
"fileMatch": [
"infrastructure/.+\\.ya?ml$",
"infrastructure/.+\\.tf$"
],
"matchStrings": [
"# renovate: docker-image( versioning=(?<versioning>.*=?))?\n .*[:|=] \"?(?<depName>.*?):(?<currentValue>[^\"\n]*=?)\"?",
],
"datasourceTemplate": "docker",
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
},
{
"description": [
"Raw GitHub URL Regex manager"
],
"fileMatch": [
"infrastructure/.+\\.ya?ml$",
"kubernetes/.+\\.ya?ml$"
],
"matchStrings": [
"https:\\/\\/raw.githubusercontent.com\\/(?<depName>[\\w\\d\\-_]+\\/[\\w\\d\\-_]+)\\/(?<currentValue>[\\w\\d\\.\\-_]+)\\/.*",
],
"datasourceTemplate": "github-releases",
"versioningTemplate": "semver"
}
],
"packageRules": [
{
"registryAliases": {
"ghcr.io": "hub.hsn.dev/ghcr.io",
"docker.io": "hub.hsn.dev/docker.io"
},
"description": "Use custom versioning for Vector",
"matchDatasources": [
"docker"
],
"matchPackageNames": [
"docker.io/timberio/vector"
],
"versioning": "regex:^(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+)-(?<compatibility>.*)$"
},
{
"description": "Use custom versioning for Minio",
"matchDatasources": [
"docker"
],
"versioning": "regex:^RELEASE\\.(?<major>\\d+)-(?<minor>\\d+)-(?<patch>\\d+)T.*Z(-(?<compatibility>.*))?$",
"matchPackageNames": [
"quay.io/minio/minio"
]
},
{
"description": "Flux Group",
"groupName": "Flux",
"matchPackagePatterns": [
"^flux",
"^ghcr.io/fluxcd/"
],
"matchDatasources": [
"docker",
"github-tags"
],
"versioning": "semver",
"group": {
"commitMessageTopic": "{{{groupName}}} group",
},
"separateMinorPatch": true,
},
{
"description": "Mastodon images",
"groupName": "Mastodon",
"matchPackagePatterns": [
"mastodon",
"^ghcr.io/mastodon/"
],
"matchDatasources": [
"docker",
"github-tags"
],
"versioning": "semver",
"group": {
"commitMessageTopic": "{{{groupName}}} group",
},
"separateMinorPatch": true,
},
{
"description": "1Password Connect images",
"groupName": "1password-connect",
"matchPackageNames": [
"docker.io/1password/connect-sync",
"docker.io/1password/connect-api",
],
"matchDatasources": [
"docker"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
},
{
"description": "Rook-Ceph image and chart",
"groupName": "Rook Ceph",
"matchPackagePatterns": [
"rook.ceph"
],
"matchDatasources": [
"docker",
"helm"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
},
{
"description": "Cilium image and chart",
"groupName": "cilium",
"matchPackageNames": [
"quay.io/cilium/cilium",
"quay.io/cilium/operator-generic",
"cilium",
],
"matchDatasources": [
"helm",
"docker"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
},
{
"description": "External Snapshotter charts",
"groupName": "External Snapshotter",
"matchPackageNames": [
"snapshot-controller",
"snapshot-validation-webhook"
],
"matchDatasources": [
"helm"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true
},
{
"description": "Thanos image and chart - versions do not match",
"groupName": "Thanos",
"matchPackagePatterns": [
"quay.io/thanos/thanos",
"thanos"
],
"matchDatasources": [
"docker",
"github-releases",
"helm"
],
"matchUpdateTypes": [
"minor",
"patch"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
},
{
"description": "Vector image and chart - versions do not match",
"groupName": "Vector",
"matchPackagePatterns": [
"vector"
],
"matchDatasources": [
"docker",
"github-releases",
"helm"
],
"matchUpdateTypes": [
"minor",
"patch"
],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
},
// Version strategies
]
}