From a172a3e2c05ab1e31a8187581c165ecc2d42072c Mon Sep 17 00:00:00 2001 From: Hitonabi Date: Sun, 30 Aug 2026 17:07:53 +0200 Subject: [PATCH] =?UTF-8?q?fix(ci):=20setup-node=20raus=20=E2=80=94=20der?= =?UTF-8?q?=20Runner=20hat=20Node=2024=20nativ?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Lauf 221 brach nach 2:14 min ab; der einzige neue Schritt war actions/setup-node@v4. Nachgemessen am 30.08.2026: Das Runner-Image docker.gitea.com/runner-images:ubuntu-latest bringt Node v24.18.0 und npm 11.16 von Haus aus mit, und die kompletten Node-Schritte der Ampel (npm ci + build + test in rippy-windows) laufen in einem frischen node:24-Container auf der VM gruen durch. Statt Beschaffungs-Magie prueft die Ampel jetzt im Klartext, dass Node >= 22 da ist — zu alt heisst ROT mit Ansage, nicht kryptisch. Co-Authored-By: Claude Fable 5 --- .gitea/workflows/ci.yml | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index ca7e1d9..881d890 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -12,15 +12,6 @@ jobs: steps: - uses: actions/checkout@v4 - # Node fest auf 24 (LTS) — dieselbe Linie wie Electrons eingebautes - # Node in rippy-windows/ (Rippy v5). Vite 7 und node:sqlite brauchen - # es; docker/ui baut unter Node 24 nachgemessen sauber (30.08.2026). - # Das ist eine Verankerung, keine Abschwächung: Vorher prüfte die - # Ampel mit dem Zufalls-Node des Runners. - - uses: actions/setup-node@v4 - with: - node-version: 24 - - name: Ampel — erkennt Projekt-Typ selbst und prüft entsprechend shell: bash run: | @@ -61,6 +52,17 @@ jobs: if [ -n "$pkg_dateien" ]; then echo "== Node/TypeScript erkannt ==" + # Rippy v5 (rippy-windows/) braucht Node >= 22 (node:sqlite, Vite 7). + # Das Runner-Image (docker.gitea.com/runner-images:ubuntu-latest) + # bringt Node 24 nativ mit — am 30.08.2026 nachgemessen. Ein + # actions/setup-node-Schritt scheiterte hier dagegen (Lauf 221); + # deshalb die Prüfung als Klartext statt Beschaffungs-Magie. + node_major=$(node -p 'parseInt(process.versions.node)' 2>/dev/null || echo 0) + echo "-- Node im Runner: $(node -v 2>/dev/null || echo 'FEHLT')" + if [ "$node_major" -lt 22 ]; then + echo "❌ Node zu alt für rippy-windows (braucht >= 22) — Runner-Image prüfen." + rot=1 + fi while IFS= read -r pkg; do [ -n "$pkg" ] || continue d=$(dirname "$pkg")