feat(view): use snapshot views for boot artifacts#571
Draft
sidneychang wants to merge 2 commits intourunc-dev:mainfrom
Draft
feat(view): use snapshot views for boot artifacts#571sidneychang wants to merge 2 commits intourunc-dev:mainfrom
sidneychang wants to merge 2 commits intourunc-dev:mainfrom
Conversation
✅ Deploy Preview for urunc canceled.
|
Create shim-managed read-only snapshot views for container rootfs layers so urunc can read the unikernel binary, initrd, and urunc.json without copying them out before handing the block image to the unikernel. Pass the mounted view path through OCI annotations, clean up the view when task creation fails, and keep runtime-side rootfs selection state limited to choosing between the regular rootfs and the snapshot view. Fixes: urunc-dev#43 Signed-off-by: sidneychang <2190206983@qq.com>
22cbf60 to
d218dfc
Compare
Switch shared snapshot view lifetime management from shim-owned user markers to containerd container metadata labels. Pin shared views with gc.ref.snapshot labels, release the creation lease after create, and rely on delete-time unpin plus reconcile for eventual cleanup. Also replace shared host mount reuse with per-use temporary mountpoints, keep only per-view lifecycle locking, and add concurrency experiment tooling and notes. Signed-off-by: sidneychang <2190206983@qq.com>
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.
Description
Create shim-managed read-only snapshot views for container rootfs layers so urunc can read the unikernel binary, initrd, and urunc.json without copying them out before handing the block image to the unikernel.
Pass the mounted view path through OCI annotations, clean up the view when task creation fails, and keep runtime-side rootfs selection state limited to choosing between the regular rootfs and the snapshot view.
Related issues
Fixes: #43
How was this tested?
LLM usage
Cursor
Checklist
make lint).make test_ctr,make test_nerdctl,make test_docker,make test_crictl).