Make docker ps --size show virtual size really work

Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: d0de2b1e2f0939b25c83183f450c71b8309d1d32
Component: engine
This commit is contained in:
Lei Jitang
2015-05-21 08:57:11 +08:00
parent 3ad2c8df4b
commit 986a53d09e
2 changed files with 16 additions and 2 deletions
+1 -1
View File
@@ -336,7 +336,7 @@ func (container *Container) GetSize() (int64, int64) {
sizeRw = -1
}
if _, err = os.Stat(container.basefs); err != nil {
if _, err = os.Stat(container.basefs); err == nil {
if sizeRootfs, err = directory.Size(container.basefs); err != nil {
sizeRootfs = -1
}
@@ -304,7 +304,7 @@ func (s *DockerSuite) TestPsListContainersSize(c *check.C) {
}
expectedSize := fmt.Sprintf("%d B", (2 + baseBytes))
foundSize := lines[1][sizeIndex:]
if foundSize != expectedSize {
if !strings.Contains(foundSize, expectedSize) {
c.Fatalf("Expected size %q, got %q", expectedSize, foundSize)
}
@@ -666,3 +666,17 @@ func (s *DockerSuite) TestPsGroupPortRange(c *check.C) {
}
}
func (s *DockerSuite) TestPsWithSize(c *check.C) {
out, _, err := runCommandWithOutput(exec.Command(dockerBinary, "run", "-d", "--name", "sizetest", "busybox", "top"))
if err != nil {
c.Fatal(out, err)
}
out, _, err = runCommandWithOutput(exec.Command(dockerBinary, "ps", "--size"))
if err != nil {
c.Fatal(out, err)
}
if !strings.Contains(out, "virtual") {
c.Fatalf("docker ps with --size should show virtual size of container")
}
}