From c2b247fce698f4661ba8dbbb57da26a2330dd7a4 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Mon, 15 Jan 2018 16:18:22 +0100 Subject: [PATCH] Move reload-related functions to reload.go Signed-off-by: Sebastiaan van Stijn Upstream-commit: 6121a8429b9d3a6d20e900c521c2f50fff5db406 Component: engine --- components/engine/daemon/daemon_unix.go | 46 ------------------ components/engine/daemon/daemon_windows.go | 6 --- components/engine/daemon/reload_unix.go | 56 ++++++++++++++++++++++ components/engine/daemon/reload_windows.go | 9 ++++ 4 files changed, 65 insertions(+), 52 deletions(-) create mode 100644 components/engine/daemon/reload_unix.go create mode 100644 components/engine/daemon/reload_windows.go diff --git a/components/engine/daemon/daemon_unix.go b/components/engine/daemon/daemon_unix.go index bf8741096c..74046147a1 100644 --- a/components/engine/daemon/daemon_unix.go +++ b/components/engine/daemon/daemon_unix.go @@ -4,7 +4,6 @@ package daemon import ( "bufio" - "bytes" "context" "fmt" "io/ioutil" @@ -680,51 +679,6 @@ func (daemon *Daemon) initRuntimes(runtimes map[string]types.Runtime) (err error return nil } -// reloadPlatform updates configuration with platform specific options -// and updates the passed attributes -func (daemon *Daemon) reloadPlatform(conf *config.Config, attributes map[string]string) error { - if err := conf.ValidatePlatformConfig(); err != nil { - return err - } - - if conf.IsValueSet("runtimes") { - // Always set the default one - conf.Runtimes[config.StockRuntimeName] = types.Runtime{Path: DefaultRuntimeBinary} - if err := daemon.initRuntimes(conf.Runtimes); err != nil { - return err - } - daemon.configStore.Runtimes = conf.Runtimes - } - - if conf.DefaultRuntime != "" { - daemon.configStore.DefaultRuntime = conf.DefaultRuntime - } - - if conf.IsValueSet("default-shm-size") { - daemon.configStore.ShmSize = conf.ShmSize - } - - if conf.IpcMode != "" { - daemon.configStore.IpcMode = conf.IpcMode - } - - // Update attributes - var runtimeList bytes.Buffer - for name, rt := range daemon.configStore.Runtimes { - if runtimeList.Len() > 0 { - runtimeList.WriteRune(' ') - } - runtimeList.WriteString(fmt.Sprintf("%s:%s", name, rt)) - } - - attributes["runtimes"] = runtimeList.String() - attributes["default-runtime"] = daemon.configStore.DefaultRuntime - attributes["default-shm-size"] = fmt.Sprintf("%d", daemon.configStore.ShmSize) - attributes["default-ipc-mode"] = daemon.configStore.IpcMode - - return nil -} - // verifyDaemonSettings performs validation of daemon config struct func verifyDaemonSettings(conf *config.Config) error { // Check for mutually incompatible config options diff --git a/components/engine/daemon/daemon_windows.go b/components/engine/daemon/daemon_windows.go index 77e12e908c..e3b2072479 100644 --- a/components/engine/daemon/daemon_windows.go +++ b/components/engine/daemon/daemon_windows.go @@ -207,12 +207,6 @@ func verifyPlatformContainerSettings(daemon *Daemon, hostConfig *containertypes. return warnings, err } -// reloadPlatform updates configuration with platform specific options -// and updates the passed attributes -func (daemon *Daemon) reloadPlatform(config *config.Config, attributes map[string]string) error { - return nil -} - // verifyDaemonSettings performs validation of daemon config struct func verifyDaemonSettings(config *config.Config) error { return nil diff --git a/components/engine/daemon/reload_unix.go b/components/engine/daemon/reload_unix.go new file mode 100644 index 0000000000..cdc17452b9 --- /dev/null +++ b/components/engine/daemon/reload_unix.go @@ -0,0 +1,56 @@ +// +build linux freebsd + +package daemon + +import ( + "bytes" + "fmt" + + "github.com/docker/docker/api/types" + "github.com/docker/docker/daemon/config" +) + +// reloadPlatform updates configuration with platform specific options +// and updates the passed attributes +func (daemon *Daemon) reloadPlatform(conf *config.Config, attributes map[string]string) error { + if err := conf.ValidatePlatformConfig(); err != nil { + return err + } + + if conf.IsValueSet("runtimes") { + // Always set the default one + conf.Runtimes[config.StockRuntimeName] = types.Runtime{Path: DefaultRuntimeBinary} + if err := daemon.initRuntimes(conf.Runtimes); err != nil { + return err + } + daemon.configStore.Runtimes = conf.Runtimes + } + + if conf.DefaultRuntime != "" { + daemon.configStore.DefaultRuntime = conf.DefaultRuntime + } + + if conf.IsValueSet("default-shm-size") { + daemon.configStore.ShmSize = conf.ShmSize + } + + if conf.IpcMode != "" { + daemon.configStore.IpcMode = conf.IpcMode + } + + // Update attributes + var runtimeList bytes.Buffer + for name, rt := range daemon.configStore.Runtimes { + if runtimeList.Len() > 0 { + runtimeList.WriteRune(' ') + } + runtimeList.WriteString(fmt.Sprintf("%s:%s", name, rt)) + } + + attributes["runtimes"] = runtimeList.String() + attributes["default-runtime"] = daemon.configStore.DefaultRuntime + attributes["default-shm-size"] = fmt.Sprintf("%d", daemon.configStore.ShmSize) + attributes["default-ipc-mode"] = daemon.configStore.IpcMode + + return nil +} diff --git a/components/engine/daemon/reload_windows.go b/components/engine/daemon/reload_windows.go new file mode 100644 index 0000000000..b7a4031eac --- /dev/null +++ b/components/engine/daemon/reload_windows.go @@ -0,0 +1,9 @@ +package daemon + +import "github.com/docker/docker/daemon/config" + +// reloadPlatform updates configuration with platform specific options +// and updates the passed attributes +func (daemon *Daemon) reloadPlatform(config *config.Config, attributes map[string]string) error { + return nil +}