From 074ab25f8c2922cac9b2faba8cb5300f91d2bfb7 Mon Sep 17 00:00:00 2001 From: fabi Date: Sun, 31 May 2026 18:18:19 +0200 Subject: [PATCH] ci(test-backend): run on ubuntu-latest + rustup instead of rust:1-slim act_runner runs JS actions (checkout/cache) with node inside the job container; rust:1-slim ships no node, so every JS action failed with exit 127 ("node: not found"). Drop the container, run on the node-equipped ubuntu-latest image, install Rust via rustup. The postgres service is still reachable by name (act_runner containerises the job). Co-Authored-By: Claude Opus 4.8 (1M context) --- .gitea/workflows/deploy.yml | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index a85489e..b0aba2a 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -10,8 +10,6 @@ on: jobs: test-backend: runs-on: ubuntu-latest - container: - image: rust:1-slim services: postgres: image: postgres:16-alpine @@ -28,10 +26,18 @@ jobs: DATABASE_URL: postgres://mangalord:mangalord@postgres:5432/mangalord steps: - uses: actions/checkout@v4 - - name: Install build deps + # ubuntu-latest has node (so JS actions like checkout/cache run) but no + # Rust. We intentionally avoid `container: rust:1-slim` because act_runner + # runs JS actions with node *inside* the job container, and the slim Rust + # image ships no node (checkout would fail with exit 127). + - name: Install Rust + build deps run: | - apt-get update - apt-get install -y --no-install-recommends pkg-config libssl-dev ca-certificates + set -eu + SUDO=""; [ "$(id -u)" = "0" ] || SUDO="sudo" + $SUDO apt-get update + $SUDO apt-get install -y --no-install-recommends pkg-config libssl-dev ca-certificates curl + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable + echo "$HOME/.cargo/bin" >> "$GITHUB_PATH" - name: Cache cargo registry and target uses: actions/cache@v4 with: