From f8d3cfbc600ec6a33567ce372f8728bf7c2def4e Mon Sep 17 00:00:00 2001 From: Kenfe-Mickael Laventure Date: Tue, 20 Jun 2017 10:25:09 -0700 Subject: [PATCH] containerd: Do not fail on plugin failure Signed-off-by: Kenfe-Mickael Laventure --- cmd/containerd/main.go | 6 +++--- server/server.go | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/cmd/containerd/main.go b/cmd/containerd/main.go index 7248751ec..9cb361f9f 100644 --- a/cmd/containerd/main.go +++ b/cmd/containerd/main.go @@ -94,21 +94,21 @@ func main() { if config.Debug.Address != "" { l, err := sys.GetLocalListener(config.Debug.Address, config.Debug.Uid, config.Debug.Gid) if err != nil { - return err + return errors.Wrapf(err, "failed to get listener for debug endpoint") } serve(log.WithModule(ctx, "debug"), l, server.ServeDebug) } if config.Metrics.Address != "" { l, err := net.Listen("tcp", config.Metrics.Address) if err != nil { - return err + return errors.Wrapf(err, "failed to get listener for metrics endpoint") } serve(log.WithModule(ctx, "metrics"), l, server.ServeMetrics) } l, err := sys.GetLocalListener(address, config.GRPC.Uid, config.GRPC.Gid) if err != nil { - return err + return errors.Wrapf(err, "failed to get listener for main endpoint") } serve(log.WithModule(ctx, "grpc"), l, server.ServeGRPC) diff --git a/server/server.go b/server/server.go index 7e5df8f9f..d91780e6e 100644 --- a/server/server.go +++ b/server/server.go @@ -83,7 +83,8 @@ func New(ctx context.Context, config *Config) (*Server, error) { } instance, err := p.Init(initContext) if err != nil { - return nil, err + log.G(ctx).WithError(err).Warnf("failed to load plugin %s", id) + continue } initialized[p.Type] = append(initialized[p.Type], instance) // check for grpc services that should be registered with the server