renovate-config

Gemeinsames Renovate-Preset für alle Repos auf git.mars3142.dev.

Verwendung

In jedem überwachten Repo genügt eine renovate.json mit:

{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": ["local>mars3142/renovate-config"]
}

local> löst gegen diese Gitea-Instanz auf und lädt die default.json aus diesem Repo.

Was das Preset macht

  • Schedule: PRs nur Montag nachts (00:0007:00, Europe/Berlin), max. 5 offene PRs gleichzeitig.
  • Release-Age: Updates müssen 3 Tage alt sein (minimumReleaseAge). Fängt zurückgezogene und kompromittierte Releases ab. Mit internalChecksFilter: strict entsteht in der Wartezeit gar nicht erst ein PR.
  • Security: osvVulnerabilityAlerts als CVE-Kanal (Gitea hat kein Dependabot). Security-Updates umgehen Wartezeit und Schedule.
  • Automerge (via platformAutomerge, mergt sobald die required checks grün sind):
    • npm devDependencies, minor + patch, als eine gesammelte PR
    • CI actions
    • Lockfile-Maintenance
  • Nur gruppiert, kein Automerge: Svelte-/Frontend-Toolchain, Spring/Kotlin. Diese PRs schaut man sich an.
  • Major-Updates: kein PR ohne Freigabe per Checkbox im Dependency Dashboard.

Abweichen pro Repo

Alles hinter dem extends überschreibt das Preset für dieses eine Repo:

{
  "extends": ["local>mars3142/renovate-config"],
  "schedule": ["at any time"]
}

Voraussetzung für Automerge

Der Renovate-User braucht Merge-Rechte, und die CI-Jobs müssen in der Branch Protection des Ziel-Branches als required status checks eingetragen sein. Ohne required checks würde Giteas Auto-Merge sofort mergen, ohne auf CI zu warten.

S
Description
Gemeinsames Renovate-Preset fuer alle Repos (Schedule, Gruppierung, Automerge, Release-Age)
Readme
51 KiB