check / check (push) Successful in 1m47s
script/lint now only builds the new Dockerfile.lint, which copies the repo into the pinned golangci-lint image and runs the linter as a build step, so a successful build is a clean lint. It builds with --no-cache, because a cached build runs no linter, and removes the image it tagged when it exits. The main Dockerfile lint stage calls golangci-lint directly, since make lint now needs Docker. Nothing installs or runs golangci-lint on the host any more: bootstrap and the Makefile drop the install, and script/fmt drops golangci-lint run --fix. The gofmt check script/lint repeated stays in script/fmt-check. Model: opus-5-5
27 lines
694 B
Bash
Executable File
27 lines
694 B
Bash
Executable File
#!/bin/sh
|
|
# script/fmt: format all files (writes).
|
|
set -eu
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
|
|
ROOT="$(cd "$SCRIPT_DIR/.." && pwd -P)"
|
|
|
|
# Regenerate mfer/mf.pb.go from mfer/mf.proto if it is missing or stale
|
|
# (mirrors the old Makefile prerequisite; the generated file is
|
|
# committed, so this is normally a no-op).
|
|
ensure_pb() {
|
|
if [ ! -f mfer/mf.pb.go ] ||
|
|
[ -n "$(find mfer/mf.proto -newer mfer/mf.pb.go 2>/dev/null)" ]; then
|
|
(cd mfer && go generate .)
|
|
fi
|
|
}
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
ensure_pb
|
|
gofumpt -l -w mfer internal cmd
|
|
# Markdown and JSON, over the same file set script/fmt-check verifies.
|
|
"$SCRIPT_DIR/prettier" --write
|
|
}
|
|
|
|
main "$@"
|