mesh/merge-gate head 9908faaa0295 merged into trunk 238440d6f8c4 — pass, with a note: builds mesh-sdk (+41 dependent(s)) → ace, g14, novox, shanks; no bus …
mesh/repo-check head 9908faaa0295 merged into trunk 238440d6f8c4 — pass: THE CHANGE ALTERS ITS OWN CHECK (merge-check.sh, go/merge-check.sh): main's versio…
mesh/delivery delivered
28 lines
1.3 KiB
Bash
28 lines
1.3 KiB
Bash
#!/bin/sh
|
|
# mesh-check-toolchain: typescript
|
|
# mesh-check-also: go go/merge-check.sh
|
|
#
|
|
# The SDK's own check (novox/hq ADR 0237 as amended): the second layer of a pull request's merge check,
|
|
# `mesh/repo-check`, run by the build seat in the mesh's TypeScript toolchain — and by hand.
|
|
#
|
|
# The gate is the build seat's first layer (`mesh/merge-gate`), run because the mesh's module graph builds
|
|
# mesh-sdk from here — and every module whose build packages it. This is the SDK's own: the TypeScript
|
|
# spine every module imports, type-checked and its suite run, its dependencies installed from the lock
|
|
# file alone (public packages: the SDK depends on nothing of the mesh's).
|
|
#
|
|
# **Said, never passed silently**: the Python, Rust and C bindings are not tested in any toolchain. The Go
|
|
# binding runs in the Go toolchain, from go/merge-check.sh, declared on the second line (novox/hq ADR 0272); here
|
|
# it runs only when a Go compiler is present (a person's run).
|
|
set -eu
|
|
|
|
npm ci --no-audit --no-fund --loglevel=error
|
|
node node_modules/typescript/bin/tsc --noEmit
|
|
npm test
|
|
|
|
if command -v go >/dev/null 2>&1; then
|
|
sh go/merge-check.sh
|
|
else
|
|
echo "NOT TESTED HERE: go/ (the Go binding) — the Go toolchain runs it from go/merge-check.sh"
|
|
fi
|
|
echo "NOT TESTED HERE: python/, rust/, c/ — no toolchain of theirs runs a merge check"
|