浏览代码

Fix LogConfig.Config in inspect

Also add test for daemon-wide log-opt.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Alexander Morozov 10 年之前
父节点
当前提交
3f61002b05
共有 2 个文件被更改,包括 13 次插入1 次删除
  1. 1 1
      daemon/inspect.go
  2. 12 0
      integration-cli/docker_cli_daemon_test.go

+ 1 - 1
daemon/inspect.go

@@ -41,7 +41,7 @@ func (daemon *Daemon) getInspectData(container *Container) (*types.ContainerJSON
 		hostConfig.LogConfig.Type = daemon.defaultLogConfig.Type
 	}
 
-	if hostConfig.LogConfig.Config == nil {
+	if len(hostConfig.LogConfig.Config) == 0 {
 		hostConfig.LogConfig.Config = daemon.defaultLogConfig.Config
 	}
 

+ 12 - 0
integration-cli/docker_cli_daemon_test.go

@@ -1558,3 +1558,15 @@ func (s *DockerDaemonSuite) TestDaemonCorruptedSyslogAddress(c *check.C) {
 		c.Fatalf("Expected 'Error starting daemon' message; but doesn't exist in log: %q, err: %v", out, err)
 	}
 }
+
+func (s *DockerDaemonSuite) TestDaemonWideLogConfig(c *check.C) {
+	c.Assert(s.d.Start("--log-driver=json-file", "--log-opt=max-size=1k"), check.IsNil)
+	out, err := s.d.Cmd("run", "-d", "--name=logtest", "busybox", "top")
+	c.Assert(err, check.IsNil, check.Commentf("Output: %s, err: %v", out, err))
+	out, err = s.d.Cmd("inspect", "-f", "{{ .HostConfig.LogConfig.Config }}", "logtest")
+	c.Assert(err, check.IsNil, check.Commentf("Output: %s", out))
+	cfg := strings.TrimSpace(out)
+	if cfg != "map[max-size:1k]" {
+		c.Fatalf("Unexpected log-opt: %s, expected map[max-size:1k]", cfg)
+	}
+}