diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 5a845cccec1..9df99687248 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -391,6 +391,358 @@ "matchDatasources": ["docker"], "matchPackagePrefixes": ["tccr.io/truecharts/ersatztv"], "groupName": "ersatztv", - } + }, + // Setup datasources for github actions + { + "matchManagers": ["github-actions"], + "commitMessageTopic": "github-action {{depName}} [skip ci]", + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "enabled": true, + "automerge": true, + "matchUpdateTypes": ["major", "minor", "patch", "digest", "pin"], + "pinDigests": true, + }, + { + "matchDatasources": ["docker"], + "semanticCommitScope": "images", + "separateMinorPatch": true, + "automerge": true, + }, + // add labels according to package and update types + { + "matchDatasources": ["docker"], + "matchUpdateTypes": ["major"], + "commitMessagePrefix": "feat(images)!: ", + "labels": ["renovate/image", "dep/major", "automerge"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "matchUpdateTypes": ["minor"], + "semanticCommitType": "feat", + "labels": ["renovate/image", "dep/minor", "automerge"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "matchUpdateTypes": ["patch"], + "semanticCommitType": "fix", + "labels": ["renovate/image", "dep/patch", "automerge"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "matchUpdateTypes": ["digest"], + "semanticCommitType": "fix", + "labels": ["renovate/image", "dep/digest", "automerge"], + "automerge": true, + }, + // matchPackagePatterns + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?14)\\.(?\\d+)\\.(?\\d+)$", + "matchPackagePatterns": ["^bitnami/postgresql$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{4})-(?\\d{2})-(?\\d{2})$", + "matchPackagePatterns": ["^.*oznu\\/homebridge$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)-(?\\d+)-(?\\d+)$", + "matchPackagePatterns": ["^jupyter\\/.+$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)-ubuntu$", + "matchPackagePatterns": ["^zabbix\\/zabbix-.*$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^stable-(?\\d{1})(?\\d{1})(?\\d{2}).*$", + "matchPackagePatterns": ["^jitsi\\/.*$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackagePatterns": ["^penpot\\/.*$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^\\d*-jammy-(?.+)-v(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackagePatterns": ["^.+\\/koush\\/scrypted$"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^version-(?\\d+)\\.(?\\d+)\\.(?\\d+)-.*$", + "matchPackagePatterns": ["^.*linuxserver\\/deluge$"], + "automerge": true, + }, + // matchPackageNames + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)-postgres-tomcat$", + "matchPackageNames": ["xwiki"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^version-(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["fireflyiii/core"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^v(?\\d+)\\.(?\\d+)\\.(?\\d+)-\\d+\\.\\d+\\.\\d+$", + "matchPackageNames": ["netboxcommunity/netbox"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{2})(?\\d{2})(?\\d{2})$", + "matchPackageNames": ["photoprism/photoprism"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["cloudflare/cloudflared"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^version-(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["linuxserver/calibre-web"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^version-v(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["linuxserver/heimdall"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^postgresql-v(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["ghcr.io/umami-software/umami"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^version-v(?\\d+)\\.(?\\d+)\\.?(?\\d*)$", + "matchPackageNames": ["linuxserver/mylar3"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^[a-z0-9]{9}-v(?\\d+)\\.(?\\d+)\\.(?\\d+)-go\\d+\\.\\d+\\.\\d+$", + "matchPackageNames": ["storjlabs/storagenode"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)-php8\\.0-apache$", + "matchPackageNames": ["joyqi/typecho"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^v\\.(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["difegue/lanraragi"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^RELEASE\\.(?\\d+)-(?\\d+)-(?\\d+)T\\d+-\\d+-\\d+Z$", + "matchPackageNames": ["minio/minio"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^RELEASE\\.(?\\d+)-(?\\d+)-(?\\d+)T\\d+-\\d+-\\d+Z$", + "matchPackageNames": ["minio/mc"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^apache-(?\\d+)\\.(?\\d+)\\.?(?\\d*)-prod$", + "matchPackageNames": ["kimai/kimai2"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)-(?\\d+)-(?\\d+)$", + "matchPackageNames": ["rssbridge/rss-bridge"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)-(?\\d+)-(?\\d+)$", + "matchPackageNames": ["alexta69/metube"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^focal-(?\\d+)\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["codeproject/senseai-server"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^latest-(?\\d+)-(?\\d+)-(?\\d+)$", + "matchPackageNames": ["wangqiru/ttrss"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)(-\\d+)?$", + "matchPackageNames": ["kiwix/kiwix-serve"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^v(?\\d+)\\.(?\\d+)\\.(?\\d+)-omnibus$", + "matchPackageNames": ["ghcr.io/analogj/scrutiny"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)-(?\\d+)-(?\\d+)$", + "matchPackageNames": ["diygod/rsshub"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)-amd64(nvidia)?$", + "matchPackageNames": ["blakeblackshear/frigate"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{1,4})\\.(?\\d+)\\.(?\\d+)$", + "matchPackageNames": ["kopia/kopia"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{4})\\.(?\\d{1,2})\\.(?\\d{1,2).*$", + "matchPackageNames": ["alicevision/meshroom"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{4})\\.(?\\d{1,2})\\.(?\\d{1,2})$", + "matchPackageNames": ["itzg/bungeecord"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^java8-(?\\d{4})\\.(?\\d{1,2})\\.(?\\d{1,2})$", + "matchPackageNames": ["itzg/bungeecord"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^java11-(?\\d{4})\\.(?\\d{1,2})\\.(?\\d{1,2})$", + "matchPackageNames": ["itzg/bungeecord"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^java17-(?\\d{4})\\.(?\\d{1,2})\\.(?\\d{1,2})$", + "matchPackageNames": ["itzg/bungeecord"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{4})\\.(?\d{1,2})\\.(?\\d{1,2})(-java\\d{1,2}.*)?$", + "matchPackageNames": ["itzg/minecraft-server"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d{4})(?\\d{2})(?\\d{2})$", + "matchPackageNames": ["ankicommunity/anki-sync-server"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)-jdk17$", + "matchPackageNames": ["jenkins/jenkins"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^x64-v(?\\d*)\\.(?\\d*)\\.(?\\d*)$", + "matchPackageNames": ["housewrecker/gaps"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d*)\\.(?\\d*)\\.(?\\d*)-\\d*$", + "matchPackageNames": ["sameersbn/apt-cacher-ng"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^release-(?\\d*)\\.(?\\d*)$", + "matchPackageNames": ["mattermost/mattermost-enterprise-edition"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "versioning": "regex:^(?\\d+)\\.(?\\d+)\\.(?\\d+)-.+$", + "matchPackageNames": ["corentinth/it-tools"], + "automerge": true, + }, + { + "matchDatasources": ["docker"], + "automerge": true, + "matchUpdateTypes": ["major", "minor", "patch", "digest", "pin"], + }, + // + // Version strategies + // + // Versioning for linuxserver two-three digit container versions + { + "packagePatterns": ["^linuxserver\\/","^deepquestai\\/"], + "versionScheme": "regex:^(?.*?(\\d+\\.)??)(?\\d+)\\.(?\\d+)\\.?(?\\d+)?(-r?p?\\d)?$" + }, + { + "matchDatasources": [ + "docker" + ], + "versioning": "loose", + "matchPackageNames": [ + "ghcr.io/onedr0p/plex", + "ghcr.io/onedr0p/qbittorrent", + "sirfragalot/hyperion.ng", + ], + }, + { + "matchDatasources": [ + "docker" + ], + "matchPackageNames": [ + "quay.io/helmpack/chart-releaser", + "jnorwood/helm-docs", + "quay.io/git-chglog/git-chglog" + ], + "automerge": false, + "matchUpdateTypes": ["major", "minor", "patch", "digest", "pin"], + "labels": ["renovate/image", "ci"], + }, + ] }