theshire/renovate.json5
2024-11-19 19:40:28 -06:00

162 lines
5.4 KiB
Text

{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended",
"local>jahanson/theshire//.renovate/autoMerge.json5",
"local>jahanson/theshire//.renovate/commitMessage.json5",
"local>jahanson/theshire//.renovate/customManagers.json5",
"local>jahanson/theshire//.renovate/grafanaDashboards.json5",
"local>jahanson/theshire//.renovate/groups.json5",
"local>jahanson/theshire//.renovate/labels.json5",
"local>jahanson/theshire//.renovate/packageRules.json5"
],
"ignorePaths": ["**/*.sops.*", "**/.archive/**", "**/resources/**"],
"flux": {
"fileMatch": ["kubernetes/.+\\.ya?ml$"]
},
"helm-values": {
"fileMatch": ["kubernetes/.+\\.ya?ml$"]
},
"kubernetes": {
"fileMatch": [
"(^|/)kubernetes/.+\\.ya?ml(?:\\.j2)?$",
"(^|/)\\.taskfiles/.+\\.ya?ml(?:\\.j2)?$"
]
},
"customManagers": [
{
"customType": "regex",
"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"
},
{
"customType": "regex",
"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}}"
},
{
"customType": "regex",
"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": [
{
"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",
"matchDatasources": ["docker", "github-tags"],
"versioning": "semver",
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
"matchPackageNames": ["/^flux/", "/^ghcr.io/fluxcd//"]
},
{
"description": "Mastodon images",
"groupName": "Mastodon",
"matchDatasources": ["docker", "github-tags"],
"versioning": "semver",
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
"matchPackageNames": ["/mastodon/", "/^ghcr.io/mastodon//"]
},
{
"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",
"matchDatasources": ["docker", "helm"],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"separateMinorPatch": true,
"matchPackageNames": ["/rook.ceph/"]
},
{
"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",
"matchDatasources": ["docker", "github-releases", "helm"],
"matchUpdateTypes": ["minor", "patch"],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"matchPackageNames": ["/quay.io/thanos/thanos/", "/thanos/"]
},
{
"description": "Vector image and chart - versions do not match",
"groupName": "Vector",
"matchDatasources": ["docker", "github-releases", "helm"],
"matchUpdateTypes": ["minor", "patch"],
"group": {
"commitMessageTopic": "{{{groupName}}} group"
},
"matchPackageNames": ["/vector/"]
}
]
}