1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Add status string to State field for inspect

Fixes: #13579

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
This commit is contained in:
Qiang Huang 2015-07-28 08:48:27 +08:00
parent 4ed3e3a5b2
commit fed85c3296
4 changed files with 38 additions and 2 deletions

View file

@ -207,6 +207,7 @@ type ExecStartCheck struct {
}
type ContainerState struct {
Status string
Running bool
Paused bool
Restarting bool

View file

@ -42,6 +42,7 @@ func (daemon *Daemon) getInspectData(container *Container) (*types.ContainerJSON
}
containerState := &types.ContainerState{
Status: container.State.StateString(),
Running: container.State.Running,
Paused: container.State.Paused,
Restarting: container.State.Restarting,

View file

@ -425,8 +425,9 @@ Return low-level information on the container `id`
"Paused": false,
"Pid": 0,
"Restarting": false,
"Running": false,
"StartedAt": "2015-01-06T15:47:32.072697474Z"
"Running": true,
"StartedAt": "2015-01-06T15:47:32.072697474Z",
"Status": "running"
},
"Mounts": [
{
@ -2159,6 +2160,7 @@ Return low-level information about the `exec` command `id`.
"OpenStdout" : false,
"Container" : {
"State" : {
"Status" : "running",
"Running" : true,
"Paused" : false,
"Restarting" : false,

View file

@ -47,6 +47,38 @@ func (s *DockerSuite) TestInspectDefault(c *check.C) {
dockerCmd(c, "inspect", "busybox")
}
func (s *DockerSuite) TestInspectStatus(c *check.C) {
out, _ := dockerCmd(c, "run", "-d", "busybox", "top")
out = strings.TrimSpace(out)
inspectOut, err := inspectField(out, "State.Status")
c.Assert(err, check.IsNil)
if inspectOut != "running" {
c.Fatalf("inspect got wrong status, got: %q, expected: running", inspectOut)
}
dockerCmd(c, "pause", out)
inspectOut, err = inspectField(out, "State.Status")
c.Assert(err, check.IsNil)
if inspectOut != "paused" {
c.Fatalf("inspect got wrong status, got: %q, expected: paused", inspectOut)
}
dockerCmd(c, "unpause", out)
inspectOut, err = inspectField(out, "State.Status")
c.Assert(err, check.IsNil)
if inspectOut != "running" {
c.Fatalf("inspect got wrong status, got: %q, expected: running", inspectOut)
}
dockerCmd(c, "stop", out)
inspectOut, err = inspectField(out, "State.Status")
c.Assert(err, check.IsNil)
if inspectOut != "exited" {
c.Fatalf("inspect got wrong status, got: %q, expected: exited", inspectOut)
}
}
func (s *DockerSuite) TestInspectTypeFlagContainer(c *check.C) {
//Both the container and image are named busybox. docker inspect will fetch container