check / check (push) Waiting to run
The shared files are the sneak/prompts copies at dd4027b, plus this repository's own entries. make lint and make test each build one Dockerfile phase without the cache, both covering the frontend; the builder stage waits on both and takes its version from git describe unless VERSION is given. The test phase keeps Go's module and build caches in memory, out of the image make test tags. golangci-lint moves to v2.14.0 with the new .golangci.yml; one test spells X-Request-ID as canonicalheader asks. prettier formats only JavaScript, CSS, HTML and Markdown, so .golangci.yml stays as fetched. script/fmt and script/fmt-check put ~/.local/bin on PATH. script/bootstrap keeps a Go only if it is exactly GO_VERSION, and re-checks the go on PATH after installing. Model: opus-5-5
25 lines
908 B
Bash
Executable File
25 lines
908 B
Bash
Executable File
#!/bin/sh
|
|
# script/frontend-test: run the frontend test suite on the host: the
|
|
# unit tests in test/unit/, through the test script in package.json,
|
|
# then the production build, which fails on broken code. make test runs
|
|
# the same in the frontend stage of Dockerfile. The tests print a dot
|
|
# each; if any fails, they run again with every test listed, and the
|
|
# script fails even if that run passes. NODE_OPTIONS chooses the
|
|
# reporter because yarn adds its arguments after the test files, where
|
|
# node would take a reporter option for one more file.
|
|
set -eu
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd -P)"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
NODE_OPTIONS=--test-reporter=dot timeout 90 yarn --silent run test || {
|
|
echo "--- Rerunning with every test listed for details ---"
|
|
NODE_OPTIONS=--test-reporter=spec timeout 90 yarn --silent run test
|
|
exit 1
|
|
}
|
|
timeout 30 yarn build
|
|
}
|
|
|
|
main "$@"
|