Loading
Move the app runtime to distroless Debian 13 and scan its base before merge
Removes the release blocker for incident 304cc0cbdc423fcf without touching the verified application.
Dockerfile.app: the runtime stage becomesFROM gcr.io/distroless/static-debian13:nonroot. The Debian 12 LTS advisories that denied Package (DLA-4845-1, DLA-4792-1, DLA-4854-1 inca-certificatesandtzdata) do not apply to it. Unlikescratch, it keeps/tmp, whichParseMultipartForm(1024)needs for uploads over 1 KiB, and/etc/passwdandnsswitch.conf. Only theFROMline and a comment change.base_image_scan: a new test-stage job runs the Package image gate on the runtime base image in every MR pipeline. A base-image advisory now blocks the MR, not a merged repair.- Trivy cache: Package and
base_image_scanreuse a cached vulnerability DB.
Release path: !2 (merged) is merged and the controller is deployed from it (aegisflow-control-00009). It recorded Package · blocked on #3 (closed) and classified it as a base-image block. When this merges, the protected pipeline's Package job asks the controller for release authorization. The controller adopts this commit only if:
- the application inputs are byte-identical to the verified repair
2d8c06c; Dockerfile.appchanges only allowlistedFROMimages;- every required job plus
base_image_scanpassed.
Canary and supervised approval then run again for the new SHA.
This is an operator-authored remediation, not a Duo change; the repair itself remains Duo's MR !1 (merged).
Edited by Tomiwa Adeyemi