feat(shim): add task wrapper and containerd access session#657
Draft
sidneychang wants to merge 2 commits into
Draft
feat(shim): add task wrapper and containerd access session#657sidneychang wants to merge 2 commits into
sidneychang wants to merge 2 commits into
Conversation
✅ Deploy Preview for urunc canceled.
|
Contributor
Author
|
I opened this draft PR for the initial task service wrapper and narrow containerd access session. There are still some implementation details to clean up, but I would like to first check whether the overall design direction looks reasonable to you. Please let me know if this layering matches what we discussed, or if you think I should adjust the structure before continuing with the remaining details. Thanks! |
Signed-off-by: sidneychang <2190206983@qq.com>
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
Introduce a urunc-specific containerd shim task service wrapper and a small
shim-side containerd access foundation.
The task plugin now wraps containerd/runc's task service through a urunc-owned
task service type. For now, the wrapper is behavior-preserving and forwards
Create/Delete to the wrapped runc service. This gives later shim-side features a
single shared hook point instead of adding independent task plugins.
The containerd access layer adds a narrow
containerdSessionhelper that owns ashort-lived gRPC connection, namespace propagation, task-level container metadata
lookup, gRPC error conversion, and generated service client construction for the
containerd APIs needed by the annotation and snapshot-view work.
This intentionally does not wire the annotation-injection or snapshot-view
logic yet. Those feature helpers can build on this foundation while keeping
feature-specific behavior outside the common containerd access layer.
Related issues
How was this tested?
LLM usage
GPT-5
Checklist
make lint).make test_ctr,make test_nerdctl,make test_docker,make test_crictl).