Move client implementations for content store and snapshotter#2341
Move client implementations for content store and snapshotter#2341estesp merged 4 commits intocontainerd:masterfrom
Conversation
Signed-off-by: Derek McGowan <[email protected]>
Signed-off-by: Derek McGowan <[email protected]>
Signed-off-by: Derek McGowan <[email protected]>
Signed-off-by: Derek McGowan <[email protected]>
|
Will docker use this for all filesystem? Or only filesystem which containerd doesn't support today? |
The proposed snapshot proxy would only be used for snapshotters based on Docker graph drivers, which are not supported today. The proxy drivers could also be used to provided other implementations which all clients could end up using transparently, such as P2P content stores. |
|
@dmcgowan I see. Thanks! I'm just curious whether Docker will partially use containerd image management, and partially use graph driver. Or Docker will only use graph drivers for a long time. |
|
Sorry, I don't quite understand this PR. Why the package is called "proxy"? Will Docker replace the grpc service implementation or the interface implementation? |
The goal is to move Docker over in stages, ultimately completely using the image management and only graph drivers to support upgrade or graph drivers which do not have a snapshotter equivalent.
These implementations of the content store and snapshotter just proxy over GRPC, there is no concrete implementation. I used the term "proxy" here because the caller is not intended to distinguish between using the proxy or directly using a concrete snapshotter. |
Codecov Report
@@ Coverage Diff @@
## master #2341 +/- ##
==========================================
+ Coverage 44.98% 44.99% +<.01%
==========================================
Files 92 92
Lines 9340 9350 +10
==========================================
+ Hits 4202 4207 +5
- Misses 4459 4461 +2
- Partials 679 682 +3
Continue to review full report at Codecov.
|
|
LGTM |
The client implementations for content store and snapshotters are just proxy implementations of the interface. Move these next to the other implementations. These could be used for any proxy implementation.