# renovate-config Gemeinsames Renovate-Preset für alle Repos auf git.mars3142.dev. ## Verwendung In jedem überwachten Repo genügt eine `renovate.json` mit: ```json { "$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:00–07: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: ```json { "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.