make fmt and make fmt-check covered only Go, so Markdown formatting was checked by eye. prettier, pinned in package.json and yarn.lock beside ESLint and installed by the same js-deps stage, now formats every Markdown file with the settings in .prettierrc (4-space tabs, prose wrapped). It runs only in Docker: make fmt writes the formatted files back from the markdown-output stage, and make fmt-check and the image build run the markdown-check stage. The Dockerfile's lint stage now runs the gofmt check itself, since make fmt-check needs a docker daemon. Model: opus-5-5
19 lines
474 B
Bash
Executable File
19 lines
474 B
Bash
Executable File
#!/bin/sh
|
|
# script/fmt: format all files (writes): the Go code with gofmt and
|
|
# goimports, the Markdown with prettier. prettier is never installed
|
|
# locally: it runs in docker, in the Dockerfile's Markdown stages.
|
|
set -eu
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd -P)"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
gofmt -s -w .
|
|
if command -v goimports >/dev/null 2>&1; then
|
|
goimports -w .
|
|
fi
|
|
docker build --target markdown-output --output type=local,dest=. .
|
|
}
|
|
|
|
main "$@"
|