#!/bin/bash # Row 130 targeted builder gate (#271, decision 136): the cli suite, and the # webui tests that import reads.mjs, which imports cli.mjs. No # scripts/test-*.sh reads a changed path. set -o pipefail G=~/darkwing-scratch/r130/wt OUT=~/darkwing-scratch/r130/pkt/gate mkdir -p "$OUT" cd "$G" || exit 9 [ -d "$G/node_modules" ] || { echo "STOP no node_modules in $G"; exit 8; } echo "base $(git rev-parse --short HEAD) start $(date -u +%H:%M:%S)" run() { local name="$1" dir="$2" cmd="$3" (cd "$G/$dir" && TMPDIR=~/darkwing-scratch/r130/tmp bash -c "$cmd") > "$OUT/$name.log" 2>&1; local rc=$? echo "$name rc=$rc $(grep -E '^ℹ (pass|fail) [0-9]+' "$OUT/$name.log" | tr '\n' ' ')" [ $rc -eq 0 ] || { echo "STOP $name"; exit $rc; }; } run pkg-cli packages/cli 'node --test tests/*.test.mjs' run webui-reads packages/webui 'node --test tests/reads.test.mjs tests/views.test.mjs tests/pinned-copy.test.mjs' echo "GATE_PASSED $(date -u +%H:%M:%S)"