Repository navigation
merge queue: checking #77 on main (9ccacb2) - #78
Closed
mergify[bot] wants to merge 3 commits into
Closed
mergify[bot] wants to merge 3 commits into
mergify[bot] wants to merge 3 commits into
Conversation
Tinkerbell needed a layout file published with every ISO to find the slot. Fetching, caching and keeping that file in step with the ISO, across redirects and ISOs replaced in place, was where most of Tinkerbell's complexity and failure modes came from. Every sector of the slot now starts with a header identifying it, so Tinkerbell finds the slot in the bytes it serves, as it already does the kernel arguments, and no layout file is published. Each header is an empty cpio archive, so an ISO served unmodified still boots. The build checks that the slot is stored intact and sector aligned, and that nothing else in the ISO looks like one of its headers. An ISO that fails the check is removed, and an existing ISO is only reused when it passes. Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
grub-mkrescue wrote straight to the final path, so a build that failed or was interrupted after writing the bootstrap slot left a truncated ISO whose slot still passes the check, and a later build reused it. Build and check the ISO under a .partial name and move it into place only when both succeed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
This is a merge queue draft opened by Mergify. Nobody needs to act on it.
Mergify opened it for batch usual-fricassee-jlc44s of the
defaultqueue, to test #77 before it merges intomain. Pushing to this branch or closing this pull request removes #77 from the queue.What this draft tests
Mergify checks that #77 still passes CI on top of
main. CI runs on this draft's code, built in this order:mainat9ccacb2🎉 Where it stands: checks passed
CI passed on this draft.
Follow the
defaultqueue in the dashboardWhat happens next
mainand closes this draft.Metadata for CI tooling, read by
mergify ciRequired conditions of queue rule
defaultfor merge#changes-requested-reviews-by=0base=maincheck-success=DCOcheck-success=build-captainos (with kernel) trixie-slim (amd64)check-success=build-captainos (with kernel) trixie-slim (arm64)check-success=build-captainos trixie-armbian-rpi (arm64)check-success=build-captainos trixie-full (amd64)check-success=build-captainos trixie-full (arm64)check-success=build-captainos trixie-genio (arm64)check-success=build-captainos trixie-meson64 (arm64)check-success=build-captainos trixie-rockchip64 (arm64)check-success=build-captainos trixie-rockchip64-vendor (arm64)check-success=build-captainos-kernel (amd64)check-success=build-captainos-kernel (arm64)check-success=build-dockerfile (amd64)check-success=build-dockerfile (arm64)check-success=download-tools (amd64)check-success=download-tools (arm64)check-success=preparegithub-review-approved[🛡 GitHub repository ruleset rulemain]label!=do-not-mergelabel=ready-to-mergequeue-position>=0author=jacobweinstock#approved-reviews-by>=1main]:check-success = @github-actions/download-tools (amd64)check-neutral = @github-actions/download-tools (amd64)check-skipped = @github-actions/download-tools (amd64)main]:check-success = @github-actions/download-tools (arm64)check-neutral = @github-actions/download-tools (arm64)check-skipped = @github-actions/download-tools (arm64)main]:check-success = @github-actions/build-captainos (with kernel) trixie-slim (amd64)check-neutral = @github-actions/build-captainos (with kernel) trixie-slim (amd64)check-skipped = @github-actions/build-captainos (with kernel) trixie-slim (amd64)main]:check-success = @github-actions/build-captainos (with kernel) trixie-slim (arm64)check-neutral = @github-actions/build-captainos (with kernel) trixie-slim (arm64)check-skipped = @github-actions/build-captainos (with kernel) trixie-slim (arm64)main]:check-success = @github-actions/build-captainos trixie-armbian-rpi (arm64)check-neutral = @github-actions/build-captainos trixie-armbian-rpi (arm64)check-skipped = @github-actions/build-captainos trixie-armbian-rpi (arm64)main]:check-success = @github-actions/build-captainos trixie-full (amd64)check-neutral = @github-actions/build-captainos trixie-full (amd64)check-skipped = @github-actions/build-captainos trixie-full (amd64)main]:check-success = @github-actions/build-captainos trixie-full (arm64)check-neutral = @github-actions/build-captainos trixie-full (arm64)check-skipped = @github-actions/build-captainos trixie-full (arm64)main]:check-success = @github-actions/build-captainos trixie-genio (arm64)check-neutral = @github-actions/build-captainos trixie-genio (arm64)check-skipped = @github-actions/build-captainos trixie-genio (arm64)main]:check-success = @github-actions/build-captainos trixie-meson64 (arm64)check-neutral = @github-actions/build-captainos trixie-meson64 (arm64)check-skipped = @github-actions/build-captainos trixie-meson64 (arm64)main]:check-success = @github-actions/build-captainos trixie-rockchip64 (arm64)check-neutral = @github-actions/build-captainos trixie-rockchip64 (arm64)check-skipped = @github-actions/build-captainos trixie-rockchip64 (arm64)main]:check-success = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)check-neutral = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)check-skipped = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)main]:check-success = @github-actions/build-captainos-kernel (amd64)check-neutral = @github-actions/build-captainos-kernel (amd64)check-skipped = @github-actions/build-captainos-kernel (amd64)main]:check-success = @github-actions/preparecheck-neutral = @github-actions/preparecheck-skipped = @github-actions/preparemain]:check-success = @github-actions/build-dockerfile (amd64)check-neutral = @github-actions/build-dockerfile (amd64)check-skipped = @github-actions/build-dockerfile (amd64)main]:check-success = @github-actions/build-dockerfile (arm64)check-neutral = @github-actions/build-dockerfile (arm64)check-skipped = @github-actions/build-dockerfile (arm64)main]:check-success = @github-actions/build-captainos-kernel (arm64)check-neutral = @github-actions/build-captainos-kernel (arm64)check-skipped = @github-actions/build-captainos-kernel (arm64)Required conditions to stay in the queue
#changes-requested-reviews-by=0base=maincheck-success=DCOcheck-success=build-captainos (with kernel) trixie-slim (amd64)check-success=build-captainos (with kernel) trixie-slim (arm64)check-success=build-captainos trixie-armbian-rpi (arm64)check-success=build-captainos trixie-full (amd64)check-success=build-captainos trixie-full (arm64)check-success=build-captainos trixie-genio (arm64)check-success=build-captainos trixie-meson64 (arm64)check-success=build-captainos trixie-rockchip64 (arm64)check-success=build-captainos trixie-rockchip64-vendor (arm64)check-success=build-captainos-kernel (amd64)check-success=build-captainos-kernel (arm64)check-success=build-dockerfile (amd64)check-success=build-dockerfile (arm64)check-success=download-tools (amd64)check-success=download-tools (arm64)check-success=preparegithub-review-approved[🛡 GitHub repository ruleset rulemain]label!=do-not-mergelabel=ready-to-mergeauthor=jacobweinstock#approved-reviews-by>=1main]:check-success = @github-actions/download-tools (amd64)check-neutral = @github-actions/download-tools (amd64)check-skipped = @github-actions/download-tools (amd64)main]:check-success = @github-actions/download-tools (arm64)check-neutral = @github-actions/download-tools (arm64)check-skipped = @github-actions/download-tools (arm64)main]:check-success = @github-actions/build-captainos (with kernel) trixie-slim (amd64)check-neutral = @github-actions/build-captainos (with kernel) trixie-slim (amd64)check-skipped = @github-actions/build-captainos (with kernel) trixie-slim (amd64)main]:check-success = @github-actions/build-captainos (with kernel) trixie-slim (arm64)check-neutral = @github-actions/build-captainos (with kernel) trixie-slim (arm64)check-skipped = @github-actions/build-captainos (with kernel) trixie-slim (arm64)main]:check-success = @github-actions/build-captainos trixie-armbian-rpi (arm64)check-neutral = @github-actions/build-captainos trixie-armbian-rpi (arm64)check-skipped = @github-actions/build-captainos trixie-armbian-rpi (arm64)main]:check-success = @github-actions/build-captainos trixie-full (amd64)check-neutral = @github-actions/build-captainos trixie-full (amd64)check-skipped = @github-actions/build-captainos trixie-full (amd64)main]:check-success = @github-actions/build-captainos trixie-full (arm64)check-neutral = @github-actions/build-captainos trixie-full (arm64)check-skipped = @github-actions/build-captainos trixie-full (arm64)main]:check-success = @github-actions/build-captainos trixie-genio (arm64)check-neutral = @github-actions/build-captainos trixie-genio (arm64)check-skipped = @github-actions/build-captainos trixie-genio (arm64)main]:check-success = @github-actions/build-captainos trixie-meson64 (arm64)check-neutral = @github-actions/build-captainos trixie-meson64 (arm64)check-skipped = @github-actions/build-captainos trixie-meson64 (arm64)main]:check-success = @github-actions/build-captainos trixie-rockchip64 (arm64)check-neutral = @github-actions/build-captainos trixie-rockchip64 (arm64)check-skipped = @github-actions/build-captainos trixie-rockchip64 (arm64)main]:check-success = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)check-neutral = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)check-skipped = @github-actions/build-captainos trixie-rockchip64-vendor (arm64)main]:check-success = @github-actions/build-captainos-kernel (amd64)check-neutral = @github-actions/build-captainos-kernel (amd64)check-skipped = @github-actions/build-captainos-kernel (amd64)main]:check-success = @github-actions/preparecheck-neutral = @github-actions/preparecheck-skipped = @github-actions/preparemain]:check-success = @github-actions/build-dockerfile (amd64)check-neutral = @github-actions/build-dockerfile (amd64)check-skipped = @github-actions/build-dockerfile (amd64)main]:check-success = @github-actions/build-dockerfile (arm64)check-neutral = @github-actions/build-dockerfile (arm64)check-skipped = @github-actions/build-dockerfile (arm64)main]:check-success = @github-actions/build-captainos-kernel (arm64)check-neutral = @github-actions/build-captainos-kernel (arm64)check-skipped = @github-actions/build-captainos-kernel (arm64)