Files
rhentschel 47966ddb13 chore: Renovate zentral in ci-templates
Abhaengigkeits-Updates laufen an einer Stelle statt in jedem Repo einzeln.
Der woechentliche Lauf liest die Repository-Liste im Workflow und legt die
PRs jeweils dort an.

- renovate-basis.json: Minor und Patch gebuendelt in einen PR pro Woche,
  Major nur nach Freigabe ueber das Dashboard, Sicherheits-Updates am
  Zeitplan vorbei.
- renovate.yml: montags 04:00 UTC, dazu workflow_dispatch mit dry-run.
  Node 24, weil Renovate 44 das verlangt.

Braucht das Repo-Secret RENOVATE_TOKEN (Gitea-Token mit Schreibrecht auf
die gelisteten Repositories).
2026-09-05 15:14:38 +02:00

48 lines
1.8 KiB
YAML

# Renovate fuer die Node-Projekte. Laeuft an einer Stelle statt in jedem Repo einzeln:
# der Lauf liest die Repository-Liste unten und legt die PRs jeweils dort an.
#
# Voraussetzung: Repo-Secret RENOVATE_TOKEN — ein Gitea-Zugriffstoken mit Schreibrecht
# auf die gelisteten Repositories (Bereiche: repository, issue, pull request). Ohne das
# Token kann Renovate keine Branches schieben und bricht mit 401 ab.
#
# Ein Projekt nimmt teil, sobald es eine renovate.json mit
# { "extends": ["local>roland/ci-templates:renovate-basis"] }
# hat UND hier in RENOVATE_REPOSITORIES steht.
name: renovate
on:
schedule:
- cron: "0 4 * * 1" # montags 04:00 UTC
workflow_dispatch:
inputs:
dry-run:
description: "Nur anzeigen, was Renovate taete (keine PRs)"
type: boolean
default: false
jobs:
renovate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: 24 # Renovate 44 verlangt Node 24
- name: Renovate laufen lassen
env:
RENOVATE_PLATFORM: gitea
RENOVATE_ENDPOINT: https://git.rolandhentschel.de/api/v1
RENOVATE_TOKEN: ${{ secrets.RENOVATE_TOKEN }}
RENOVATE_REPOSITORIES: roland/rako-hausverwaltung,roland/clickfortravel-tms
RENOVATE_GIT_AUTHOR: "Renovate <renovate@rolandhentschel.de>"
# Ohne "onboarding" legt Renovate keine Konfigurations-PRs an: teilnehmen soll nur,
# wer selbst eine renovate.json hat.
RENOVATE_ONBOARDING: "false"
RENOVATE_REQUIRE_CONFIG: "required"
RENOVATE_DRY_RUN: ${{ inputs.dry-run && 'full' || '' }}
LOG_LEVEL: info
run: npx --yes renovate@44