diff --git a/api/server/router/system/backend.go b/api/server/router/system/backend.go index f5d2d98101..2a9ffd6d1d 100644 --- a/api/server/router/system/backend.go +++ b/api/server/router/system/backend.go @@ -13,7 +13,7 @@ import ( // Backend is the methods that need to be implemented to provide // system specific functionality. type Backend interface { - SystemInfo() (*types.Info, error) + SystemInfo() *types.Info SystemVersion() types.Version SystemDiskUsage(ctx context.Context) (*types.DiskUsage, error) SubscribeToEvents(since, until time.Time, ef filters.Args) ([]events.Message, chan interface{}) diff --git a/api/server/router/system/system_routes.go b/api/server/router/system/system_routes.go index 02085ecd1d..27063fc0ff 100644 --- a/api/server/router/system/system_routes.go +++ b/api/server/router/system/system_routes.go @@ -44,10 +44,8 @@ func (s *systemRouter) pingHandler(ctx context.Context, w http.ResponseWriter, r } func (s *systemRouter) getInfo(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error { - info, err := s.backend.SystemInfo() - if err != nil { - return err - } + info := s.backend.SystemInfo() + if s.cluster != nil { info.Swarm = s.cluster.Info() info.Warnings = append(info.Warnings, info.Swarm.Warnings...) diff --git a/daemon/cluster/executor/backend.go b/daemon/cluster/executor/backend.go index c40f85716b..16d1363e35 100644 --- a/daemon/cluster/executor/backend.go +++ b/daemon/cluster/executor/backend.go @@ -48,7 +48,7 @@ type Backend interface { SetContainerDependencyStore(name string, store exec.DependencyGetter) error SetContainerSecretReferences(name string, refs []*swarmtypes.SecretReference) error SetContainerConfigReferences(name string, refs []*swarmtypes.ConfigReference) error - SystemInfo() (*types.Info, error) + SystemInfo() *types.Info Containers(config *types.ContainerListOptions) ([]*types.Container, error) SetNetworkBootstrapKeys([]*networktypes.EncryptionKey) error DaemonJoinsCluster(provider cluster.Provider) diff --git a/daemon/cluster/executor/container/executor.go b/daemon/cluster/executor/container/executor.go index f54dc7b511..9ba685b1d9 100644 --- a/daemon/cluster/executor/container/executor.go +++ b/daemon/cluster/executor/container/executor.go @@ -47,10 +47,7 @@ func NewExecutor(b executorpkg.Backend, p plugin.Backend, i executorpkg.ImageBac // Describe returns the underlying node description from the docker client. func (e *executor) Describe(ctx context.Context) (*api.NodeDescription, error) { - info, err := e.backend.SystemInfo() - if err != nil { - return nil, err - } + info := e.backend.SystemInfo() plugins := map[api.PluginDescription]struct{}{} addPlugins := func(typ string, names []string) { diff --git a/daemon/daemon.go b/daemon/daemon.go index 04f0e5cc4a..868ef76151 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -1098,8 +1098,7 @@ func NewDaemon(ctx context.Context, config *config.Config, pluginStore *plugin.S } close(d.startupDone) - // FIXME: this method never returns an error - info, _ := d.SystemInfo() + info := d.SystemInfo() engineInfo.WithValues( dockerversion.Version, diff --git a/daemon/events.go b/daemon/events.go index cf1634a198..709b6a603e 100644 --- a/daemon/events.go +++ b/daemon/events.go @@ -87,7 +87,7 @@ func (daemon *Daemon) LogNetworkEventWithAttributes(nw libnetwork.Network, actio // LogDaemonEventWithAttributes generates an event related to the daemon itself with specific given attributes. func (daemon *Daemon) LogDaemonEventWithAttributes(action string, attributes map[string]string) { if daemon.EventsService != nil { - if info, err := daemon.SystemInfo(); err == nil && info.Name != "" { + if info := daemon.SystemInfo(); info.Name != "" { attributes["name"] = info.Name } actor := events.Actor{ diff --git a/daemon/info.go b/daemon/info.go index cb1d39b04b..75541d0cfb 100644 --- a/daemon/info.go +++ b/daemon/info.go @@ -25,7 +25,7 @@ import ( ) // SystemInfo returns information about the host server the daemon is running on. -func (daemon *Daemon) SystemInfo() (*types.Info, error) { +func (daemon *Daemon) SystemInfo() *types.Info { defer metrics.StartTimer(hostInfoFunctions.WithValues("system_info"))() sysInfo := sysinfo.New(true) @@ -79,7 +79,7 @@ func (daemon *Daemon) SystemInfo() (*types.Info, error) { daemon.fillSecurityOptions(v, sysInfo) daemon.fillLicense(v) - return v, nil + return v } // SystemVersion returns version information about the daemon.