Three stages, all fast: the gate, then the core tests, then style. Only the calculation environment is installed, no pyadi-iio or libiio, so the pipeline needs no hardware. Laboratory experiments stay out of it: they run for minutes, need inputs from data/raw that are not in the repository, and some need a PlutoSDR attached. Those remain manual. The style job is allow_failure for now. Lab001-Lab041 use a distinctive layout with one argument per line, and normalising it would mean touching 50 files whose results are already recorded. The restriction lifts once we agree on the rules. Test results are published as a JUnit report so failures show up in the merge request rather than only in the job log. Both jobs verified locally: gate passes, 125 tests pass in 0.26 s. Registering a runner on git.arconlab.ru is the one part that has to be done on the server side. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2.4 KiB
2.4 KiB