[sandbox] Add clients

Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
This commit is contained in:
Maksym Pavlenko
2021-04-19 15:19:29 -07:00
parent df234edeb4
commit eaccbf1d03
7 changed files with 436 additions and 1 deletions

View File

@@ -22,12 +22,14 @@ import (
imagesapi "github.com/containerd/containerd/api/services/images/v1"
introspectionapi "github.com/containerd/containerd/api/services/introspection/v1"
namespacesapi "github.com/containerd/containerd/api/services/namespaces/v1"
sandboxsapi "github.com/containerd/containerd/api/services/sandbox/v1"
"github.com/containerd/containerd/api/services/tasks/v1"
"github.com/containerd/containerd/containers"
"github.com/containerd/containerd/content"
"github.com/containerd/containerd/images"
"github.com/containerd/containerd/leases"
"github.com/containerd/containerd/namespaces"
"github.com/containerd/containerd/sandbox"
"github.com/containerd/containerd/services/introspection"
"github.com/containerd/containerd/snapshots"
)
@@ -43,6 +45,8 @@ type services struct {
eventService EventService
leasesService leases.Manager
introspectionService introspection.Service
sandboxStore sandbox.Store
sandboxController sandbox.Controller
}
// ServicesOpt allows callers to set options on the services
@@ -155,3 +159,17 @@ func WithIntrospectionService(in introspection.Service) ServicesOpt {
s.introspectionService = in
}
}
// WithSandboxStore sets the sandbox store.
func WithSandboxStore(client sandboxsapi.StoreClient) ServicesOpt {
return func(s *services) {
s.sandboxStore = NewRemoteSandboxStore(client)
}
}
// WithSandboxController sets the sandbox controller.
func WithSandboxController(client sandboxsapi.ControllerClient) ServicesOpt {
return func(s *services) {
s.sandboxController = NewSandboxRemoteController(client)
}
}