Run all linting in Docker through script/lint (closes #104)
check / check (push) Successful in 12s
check / check (push) Successful in 12s
make lint calls script/lint, the only way golangci-lint is run. Inside a container it runs the linter; anywhere else it builds Dockerfile.lint, whose last step runs script/lint again. Both Dockerfiles set container=docker to mark the container, since /.dockerenv is missing in build steps and present on hosts that are themselves containers. The Dockerfile lint stage runs make lint. A new CACHEBUST build-arg on every run keeps the lint step from being served from cache; a tmpfs mount keeps Go's and golangci-lint's caches out of that step's layer, so runs do not pile up build cache. script/bootstrap and the nix-shell package lists no longer carry golangci-lint. golangci-lint config verify is not run: it fetches its schema over an unpinned live HTTPS call. Model: opus-4-8 (implementation); opus-5-5 (rework)
This commit was merged in pull request #122.
This commit is contained in:
@@ -30,6 +30,18 @@ exhaustion
|
||||
|
||||
# Completed Steps
|
||||
|
||||
- 2026-09-28 run all linting in Docker via `Dockerfile.lint` +
|
||||
`script/lint` (closes #104): `make lint` calls `script/lint`, the only
|
||||
way the linter is run; inside a container (both Dockerfiles set
|
||||
`container=docker`) it runs `golangci-lint`, anywhere else it builds the
|
||||
hash-pinned `Dockerfile.lint`, whose last step runs `script/lint` again;
|
||||
the `Dockerfile` lint stage runs `make lint`; no host or nix-shell
|
||||
`golangci-lint` path remains (`script/bootstrap` installs no linter);
|
||||
a per-run `CACHEBUST` build-arg keeps the lint step from being served
|
||||
from cache, and a tmpfs mount on that step keeps Go's and
|
||||
golangci-lint's caches out of its layer, so a run leaves no large build
|
||||
cache behind; `golangci-lint config verify` stays out, as it fetches its
|
||||
schema over an unpinned live HTTPS call
|
||||
- 2026-09-28 every setting as an environment variable (closes #128, also
|
||||
covers #99): each config key can be set by `PIXA_` plus the key in upper
|
||||
case (`.` written as `_`), and the port by `PORT`; a variable present in
|
||||
|
||||
Reference in New Issue
Block a user