Add sandbox store plugin type
Moves the sandbox store plugin under the plugins packages and adds a unique plugin type for other plugins to depend on it. Updates the sandbox controller plugin to depend on the sandbox store plugin. Signed-off-by: Derek McGowan <derek@mcg.dev>
This commit is contained in:
@@ -25,7 +25,6 @@ import (
|
||||
"github.com/containerd/containerd/errdefs"
|
||||
"github.com/containerd/containerd/events"
|
||||
"github.com/containerd/containerd/events/exchange"
|
||||
"github.com/containerd/containerd/metadata"
|
||||
"github.com/containerd/containerd/plugin"
|
||||
"github.com/containerd/containerd/runtime"
|
||||
v2 "github.com/containerd/containerd/runtime/v2"
|
||||
@@ -40,8 +39,8 @@ func init() {
|
||||
ID: services.SandboxControllerService,
|
||||
Requires: []plugin.Type{
|
||||
plugin.RuntimePluginV2,
|
||||
plugin.MetadataPlugin,
|
||||
plugin.EventPlugin,
|
||||
plugin.SandboxStorePlugin,
|
||||
},
|
||||
InitFn: func(ic *plugin.InitContext) (interface{}, error) {
|
||||
shimPlugin, err := ic.GetByID(plugin.RuntimePluginV2, "shim")
|
||||
@@ -49,21 +48,19 @@ func init() {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
metadataPlugin, err := ic.Get(plugin.MetadataPlugin)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
exchangePlugin, err := ic.GetByID(plugin.EventPlugin, "exchange")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
storePlugin, err := ic.GetByID(plugin.SandboxStorePlugin, "local")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
var (
|
||||
shims = shimPlugin.(*v2.ShimManager)
|
||||
publisher = exchangePlugin.(*exchange.Exchange)
|
||||
db = metadataPlugin.(*metadata.DB)
|
||||
store = metadata.NewSandboxStore(db)
|
||||
store = storePlugin.(sandbox.Store)
|
||||
)
|
||||
|
||||
return &controllerLocal{
|
||||
|
||||
Reference in New Issue
Block a user