check / check (push) Successful in 48s
The root Dockerfile builds the only image; Dockerfile.backend is gone. Its stages: lint, a Go stage that runs the tests and builds netwatch-server, the node stage, and an nginx runtime. nginx serves dist/ on 8080 and proxies /api/ and /.well-known/healthcheck to the backend on 127.0.0.1:8081. bin/entrypoint.sh starts both, turns TERM or INT into a stop of both, and exits non-zero when either exits on its own. The backend runs as user netwatch and keeps reports on the /data volume. New setting BIND_ADDRESS (empty: every interface). STOPSIGNAL is SIGTERM, since the nginx image's SIGQUIT would miss the entrypoint. script/docker is the org model verbatim. Model: opus-5-5
33 lines
1.2 KiB
Bash
Executable File
33 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
# script/lint: run golangci-lint over the backend. This runs inside the
|
|
# lint stage of the root Dockerfile, whose digest-pinned golangci-lint
|
|
# image provides the linter; nothing installs golangci-lint on the host.
|
|
# From a checkout, run `make lint` at the repo root, which builds that
|
|
# stage.
|
|
#
|
|
# .golangci.yml is standardized org-wide and must never be edited here
|
|
# (REPO_POLICIES.md). Its last silent drift replaced the v2 schema with
|
|
# v1 keys, which left every threshold in the file inert while the build
|
|
# stayed green. So the file is first checked against the canonical
|
|
# copy's sha256: a local comparison, no network, nothing unpinned.
|
|
set -eu
|
|
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd -P)"
|
|
|
|
GOLANGCI_CONFIG_SHA256="021cc83f4e6fc7c31b95b34b846723dfcf20b66b7baeea1dc40406e643346bcb"
|
|
|
|
main() {
|
|
cd "$ROOT"
|
|
actual="$(sha256sum .golangci.yml | cut -d' ' -f1)"
|
|
if [ "$actual" != "$GOLANGCI_CONFIG_SHA256" ]; then
|
|
echo ".golangci.yml has drifted from the org standard." >&2
|
|
echo " expected $GOLANGCI_CONFIG_SHA256" >&2
|
|
echo " actual $actual" >&2
|
|
echo "Restore it verbatim from sneak/prompts; do not edit it." >&2
|
|
exit 1
|
|
fi
|
|
golangci-lint run ./...
|
|
}
|
|
|
|
main "$@"
|