func (cli *DaemonCli) reloadConfig() { reload := func(config *daemon.Config) { // Revalidate and reload the authorization plugins if err := validateAuthzPlugins(config.AuthorizationPlugins, cli.d.PluginStore); err != nil { logrus.Fatalf("Error validating authorization plugin: %v", err) return } cli.authzMiddleware.SetPlugins(config.AuthorizationPlugins) if err := cli.d.Reload(config); err != nil { logrus.Errorf("Error reconfiguring the daemon: %v", err) return } if config.IsValueSet("debug") { debugEnabled := debug.IsEnabled() switch { case debugEnabled && !config.Debug: // disable debug debug.Disable() cli.api.DisableProfiler() case config.Debug && !debugEnabled: // enable debug debug.Enable() cli.api.EnableProfiler() } } } if err := daemon.ReloadConfiguration(*cli.configFile, cli.flags, reload); err != nil { logrus.Error(err) } }
func TestClientDebugEnabled(t *testing.T) { defer debug.Disable() cmd := newDockerCommand(&command.DockerCli{}) cmd.Flags().Set("debug", "true") err := cmd.PersistentPreRunE(cmd, []string{}) assert.NilError(t, err) assert.Equal(t, os.Getenv("DEBUG"), "1") assert.Equal(t, logrus.GetLevel(), logrus.DebugLevel) }