From 4df1caa2796eea403e941ef2897f8300d42885a6 Mon Sep 17 00:00:00 2001 From: daddy Date: Sat, 5 Sep 2026 22:35:45 +0000 Subject: [PATCH] CI: JS-action-free workflow (host runner needs no Node) actions/checkout is a JavaScript action; a host-mode act_runner needs on PATH to run it, which the AGP box doesn't have. Replace it with a plain git fetch from the local Gitea using the injected ${{ github.token }}. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_015jtxAiu5dAW4WxCNdGkrkJ --- .gitea/workflows/checkpoint.yml | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/checkpoint.yml b/.gitea/workflows/checkpoint.yml index 27e7952..fd80be6 100644 --- a/.gitea/workflows/checkpoint.yml +++ b/.gitea/workflows/checkpoint.yml @@ -3,11 +3,10 @@ name: checkpoint # Runs the full checkpoint suite (migrations, backend pytest, Godot smoke # tests, multiplayer, fresh-clone boot) on every push and PR. # -# Requires a Gitea Actions runner (act_runner) with: -# - Docker access (the suite starts an ephemeral Postgres via docker compose) -# - the Godot 4.6.2 headless binary at $HOME/godot/godot (or `godot` on PATH) -# - the backend Python deps installed (backend/requirements.txt) -# A `host`-label runner on the AGP box already has all of this. See docs/ci.md. +# Runs on a `host`-label act_runner on the AGP box: Docker, ~/godot/godot, +# and Python 3 are already there. Deliberately uses no JavaScript actions +# (actions/checkout etc.) so the host needs no Node install -- checkout is a +# plain git clone from the local Gitea. See docs/ci.md. on: push: @@ -18,10 +17,19 @@ jobs: checkpoint: runs-on: host steps: - - uses: actions/checkout@v4 + - name: Checkout + run: | + set -eu + rm -rf repo && mkdir repo && cd repo + git init -q + git remote add origin "http://x:${{ github.token }}@localhost:3000/${{ github.repository }}.git" + git fetch -q --depth 1 origin "${{ github.sha }}" + git checkout -q FETCH_HEAD - name: Backend deps - run: python -m pip install -r backend/requirements.txt + working-directory: repo + run: python3 -m pip install --quiet -r backend/requirements.txt - name: Checkpoint suite - run: python scripts/run_checkpoint_tests.py --postgres-port 25690 --backend-port 18690 + working-directory: repo + run: python3 scripts/run_checkpoint_tests.py --postgres-port 25690 --backend-port 18690