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")