docs+build-images: document catatonit as a reproducible-build dependency - #4130
docs+build-images: document catatonit as a reproducible-build dependency#4130barakeinav1 wants to merge 1 commit into
Conversation
repro-env runs its build inside podman and requires /usr/bin/catatonit as the container entrypoint, but the operator-facing prerequisite lists never mentioned it (nor skopeo, required unconditionally; the launcher path also uses repro-env). An external operator reproducing the node image to verify the manifest digest they vote on would hit the opaque 'statfs /usr/bin/catatonit' error. - docs: add catatonit (and skopeo) to the prerequisite lists; widen the node heading to cover the launcher image too. - build-images.sh: add catatonit to the repro-env preflight and include --node-gcp in its gate (it also reaches the repro-env build).
|
PR title type suggestion: This PR changes both build system files and documentation. The conventional commit type should be a single, standard type. Since it modifies Suggested title: |
There was a problem hiding this comment.
Pull request overview
Updates operator-facing documentation and build-image preflight checks to explicitly include catatonit (required by repro-env/podman) and skopeo in reproducible-build prerequisites, preventing opaque runtime failures when dependencies are missing.
Changes:
- Document
catatonitandpodmanas prerequisites for reproducible node/launcher image builds (and addskopeoto the common prerequisite list). - Harden
deployment/build-images.shpreflight to requirecatatonitand to include--node-gcpin the repro-env dependency gate.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| docs/running-an-mpc-node-in-tdx-external-guide.md | Adds missing reproducible-build prerequisites (podman, catatonit) for node and launcher verification steps. |
| docs/reproducible-builds.md | Updates prerequisite lists to include skopeo and catatonit, and clarifies node/launcher applicability. |
| deployment/build-images.sh | Extends preflight dependency checks to include catatonit and to cover --node-gcp. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Pull request overviewFollow-up to #4128 (docs/preflight side only). The substance is correct and matches the acceptance criteria in #4129. My findings are drift the PR leaves behind in the same files it audits. Changes:
Reviewed changesPer-file summary
FindingsBlocking (must fix before merge):
Non-blocking (nits, follow-ups, suggestions):
|
Follow-up to #4128 — the docs/preflight side (no workflow files).
repro-envrequirescatatonit(its podman container entrypoint), but the reproducible-build prerequisite lists never mentioned it — norskopeo(required unconditionally). So an operator reproducing the node image to verify a manifest digest before voting hits the opaquestatfs /usr/bin/catatoniterror the CI outage surfaced. Also hardensbuild-images.sh's preflight to checkcatatonitand cover--node-gcp(which reachesrepro-env buildbut was skipping the check).Docs-only + one preflight guard; no behavior change to successful builds (a missing dep now fails fast with
Missing dependency: catatonitinstead of podman's opaque error).Fixes #4129