#!/bin/bash # Row 116 targeted builder gate (#271): the new suite, the bus package whose # store.mjs read.mjs and fixture.mjs import, and the conductor suite beside it. set -o pipefail G=~/darkwing-scratch/r116/wt OUT=~/darkwing-scratch/r116/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/r116/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' ' ') | $(tail -n1 "$OUT/$name.log")" [ $rc -eq 0 ] || { echo "STOP $name"; exit $rc; }; } run pkg-bus packages/bus 'node --test tests/*.test.mjs' run script-land-work . 'bash scripts/test-land-work.sh' run script-conductor . 'bash scripts/test-conductor.sh' echo "GATE_PASSED $(date -u +%H:%M:%S)"