Files
home-ops/.github/renovate.json5
2022-07-17 03:18:22 -05:00

96 lines
3.3 KiB
Plaintext

{
"extends": [
"config:base",
"docker:enableMajor",
":disableRateLimiting",
":dependencyDashboard",
":semanticCommits",
":enablePreCommit",
":automergeDigest",
":automergeBranchPush",
"github>toboshii/home-ops//.github/renovate/allowedVersions.json5",
"github>toboshii/home-ops//.github/renovate/autoMerge.json5",
"github>toboshii/home-ops//.github/renovate/commitMessage.json5",
"github>toboshii/home-ops//.github/renovate/groups.json5",
"github>toboshii/home-ops//.github/renovate/labels.json5",
"github>toboshii/home-ops//.github/renovate/semanticCommits.json5"
],
"platform": "github",
"username": "chii-bot[bot]",
"repositories": ["toboshii/home-ops"],
"onboarding": false,
"requireConfig": false,
"gitAuthor": "chii-bot <109454249+chii-bot[bot]@users.noreply.github.com>",
"dependencyDashboardTitle": "Renovate Dashboard 🤖",
"suppressNotifications": ["prIgnoreNotification"],
"rebaseWhen": "conflicted",
"commitBodyTable": true,
"ignoreDeps": [
"ghcr.io/fluxcd/helm-controller",
"ghcr.io/fluxcd/image-automation-controller",
"ghcr.io/fluxcd/image-reflector-controller",
"ghcr.io/fluxcd/kustomize-controller",
"ghcr.io/fluxcd/notification-controller",
"ghcr.io/fluxcd/source-controller"
],
"docker-compose": {
"fileMatch": ["ansible/.+/docker-compose.*\\.ya?ml(\\.j2)?$"]
},
"flux": {
"fileMatch": ["cluster/.+\\.ya?ml$"]
},
"helm-values": {
"fileMatch": ["cluster/.+\\.ya?ml$"]
},
"kubernetes": {
"fileMatch": ["cluster/.+\\.ya?ml$"]
},
"regexManagers": [
{
"description": "Process CRD dependencies",
"fileMatch": ["cluster/crds/.+\\.ya?ml$"],
"matchStrings": [
// GitRepository where 'Git release/tag' matches 'Helm' version
"registryUrl=(?<registryUrl>\\S+) chart=(?<depName>\\S+)\n.*?(?<currentValue>[^-\\s]*)\n",
// Kustomization where 'GitHub release artifact URL' matches 'Docker image' version
"datasource=(?<datasource>\\S+) image=(?<depName>\\S+)\n.*?-\\s(.*?)\/(?<currentValue>[^/]+)\/[^/]+\n"
],
"datasourceTemplate": "{{#if datasource}}{{{datasource}}}{{else}}helm{{/if}}"
},
{
"description": "Process various dependencies",
"fileMatch": [
"ansible/.+\\.ya?ml$",
"cluster/.+\\.ya?ml$"
],
"matchStrings": [
"datasource=(?<datasource>\\S+) depName=(?<depName>\\S+)( versioning=(?<versioning>\\S+))?\n.*?\"(?<currentValue>.*)\"\n"
],
"datasourceTemplate": "{{#if datasource}}{{{datasource}}}{{else}}github-releases{{/if}}",
"versioningTemplate": "{{#if versioning}}{{{versioning}}}{{else}}semver{{/if}}"
},
{
"description": "Process raw GitHub URLs",
"fileMatch": ["cluster/.+\\.ya?ml$"],
"matchStrings": [
"https:\\/\\/raw.githubusercontent.com\\/(?<depName>[\\w\\d\\-_]+\\/[\\w\\d\\-_]+)\\/(?<currentValue>[\\w\\d\\.\\-_]+)\\/.*"
],
"datasourceTemplate": "github-releases",
"versioningTemplate": "semver"
}
],
"packageRules": [
{
"description": "Use loose versioning for certain dependencies",
"matchDatasources": ["docker", "github-releases"],
"versioning": "loose",
"matchPackageNames": [
"ghcr.io/onedr0p/emby",
"ghcr.io/onedr0p/plex",
"ghcr.io/onedr0p/qbittorrent",
"Hypfer/Valetudo"
]
}
]
}