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