From 36d689bc2c78baf0247a27c9fb29a30598fe50a3 Mon Sep 17 00:00:00 2001 From: osobh Date: Tue, 22 Sep 2026 04:48:17 -0700 Subject: [PATCH] docs: record how CI is set up, and what broke it Two jobs, which runners serve them, and the two constraints that kept the x86 job failing on every push until today: no JavaScript actions (`rust:latest` has no `node`, and GitHub is not reachable from every runner) and `cmake` for libz-ng-sys. Also notes that the Docker Hub `latest` tag for the runner is frozen at 0.6.1, so it is not a way to stay current. Co-Authored-By: Claude Opus 5 (1M context) --- CLAUDE.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index a032bca..8a93702 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -116,6 +116,23 @@ cargo build --release cargo test --workspace ``` +### CI +`.gitea/workflows/ci.yml` has two jobs, both green as of 2026-09-22: +- **`test`** (`ubuntu-latest`, in `rust:latest`) runs `scripts/ci-test.sh` with + the h5py/netCDF4 interop suites required (`CLAWHDF5_REQUIRE_INTEROP=1`). + Served by the `tank` and `architect` runners. +- **`test-arm64`** (`linux_arm64`) lints and tests the aarch64 code — the NEON + kernels are `cfg`'d out on x86, so this is the only place they are built. + Served by `vision-01` (host mode) and `vision-02` (Docker), so steps must + work in both. + +Keep workflows free of JavaScript actions (`actions/checkout`, `actions/cache`, +…): `rust:latest` has no `node`, and not every runner reaches GitHub, where +they are fetched from. Check out with plain `git` instead. Both jobs need +`cmake` for `libz-ng-sys` (from `clawhdf5-format`'s default `fast-deflate`). +All runners are on `gitea-runner` 3.5.0, from `docker.gitea.com/act_runner` +— `gitea/act_runner:latest` on Docker Hub is frozen at 0.6.1. + ### CLI ```bash cargo run -p clawhdf5-cli -- --help