check / check (push) Waiting to run
docs/core-rule-set.md, docs/lookup.md, docs/reputation.md and docs/bans.md restated the spec and are folded back into it and removed. The remaining docs files hold only lists: settings with their defaults and value forms, the request log's fields, the metrics, the endpoints, the state files and their contents, the rule file format and default file, the alert events and messages, the image's contents and pins, and the gitea notes. Every behaviour each of them held moves to the spec, said once. The settings groups have the same names in both files. Stale comments in internal/state and script/example-app point at the right places. Model: fable-5-1
1.7 KiB
1.7 KiB
What the image holds
The contents of the smallwebwaf image, and how each part is pinned.
"Deployment" in SPEC.md says why each part is there and why it
is pinned that way.
Contents
- Ubuntu 26.04 LTS, pinned by digest.
ca-certificates,nix-binandrunitfrom Ubuntu, from the snapshot of its archive at20261001T000000Z.- Nix, with nixpkgs
nixos-26.05.11045.774debe7a0d1set up for root asnixpkgs. No Nix daemon;build-users-group =in/etc/nix/nix.conf. Root's Nix profile,/nix/var/nix/profiles/default/bin, last on thePATH. Unpacked, nixpkgs takes about 500 MiB. runsvinitas the entrypoint, built fromgithub.com/peterbourgon/runsvinitat a fixed commit hash.- The
smallwebwafbinary, and the usersmallwebwaf(uid and gid 65532). - The service directory
/etc/service/smallwebwaf, with therunscriptshare/smallwebwaf.run. /var/lib/smallwebwaffor the state files, and/etc/smallwebwaf/rules.dwith the default rule fileshare/rules.d/00-default.rules.EXPOSE 8080, and theHEALTHCHECKthat runssmallwebwaf healthcheck.
Pins
- Ubuntu's packages: the snapshot service,
--snapshot 20261001T000000Zon bothapt-get updateandapt-get install. The SHA-256 hash of each of the snapshot'sInReleasefiles is named in theDockerfileand checked afterapt-get update. The hashes are the amd64 archive's. - nixpkgs: the release file
nixexprs.tar.xzofnixos-26.05.11045.774debe7a0d1onreleases.nixos.org, named with its SHA-256 hash. runsvinit: the archived repository, unchanged since 2015, at tagv2.0.0, by commit hash, with ago.modthe build writes.- The Go image that builds
smallwebwaf: by digest.