check / check (push) Canceled after 0s
The dotfiles, REPO_POLICIES.md and the standard scripts are fetched whole from sneak/prompts e3f79c4, with pixa's own entries kept after them. Check builds pass a new CACHEBUST build argument instead of --no-cache, and every Dockerfile stage declares it first, so every RUN step still runs while Go's build cache is kept. Lint runs golangci-lint v2.14.0, and the test phase runs on the Debian Go image. Of the two new lint findings, one is fixed and one (gosec G703 on the fixed config file locations) is suppressed. The agent guidance moves unchanged from CLAUDE.md to AGENTS.md. Deviation: the workflow keeps its docker-smoke step while issue 203 waits on the owner. Model: opus-5-5
24 lines
849 B
Bash
Executable File
24 lines
849 B
Bash
Executable File
#!/bin/sh
|
|
# script/test: run the test suite. Testing is a phase of the Dockerfile
|
|
# and this builds that phase alone, on the same terms as script/lint:
|
|
# --target because a phase that is not the last stage is built only when
|
|
# named, and a new CACHEBUST value because a cached test layer is a test
|
|
# that did not run; unlike --no-cache, it keeps Go's build cache. This
|
|
# relies on every stage of the Dockerfile declaring ARG CACHEBUST first;
|
|
# a stage without that line is served from cache on an unchanged tree,
|
|
# with no warning. --output type=cacheonly writes no image, since
|
|
# nothing uses one.
|
|
set -eu
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
|
|
ROOT="$(cd "$SCRIPT_DIR/.." && pwd -P)"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
docker build --build-arg CACHEBUST="$(date +%s)-$$" \
|
|
--target test \
|
|
--output type=cacheonly .
|
|
}
|
|
|
|
main "$@"
|