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

Merge pull request #15023 from hqhq/hq_add_status_in_inspect

Add status string to State field for inspect
This commit is contained in:
Alexander Morozov 2015-08-28 08:27:36 -07:00
commit 6caaa8a635
4 changed files with 38 additions and 2 deletions

View file

@ -227,6 +227,7 @@ type ExecStartCheck struct {
// ContainerState stores container's running state
// it's part of ContainerJSONBase and will return by "inspect" command
type ContainerState struct {
Status string
Running bool
Paused bool
Restarting bool

View file

@ -46,6 +46,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

@ -437,8 +437,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": [
{
@ -2176,6 +2177,7 @@ Return low-level information about the `exec` command `id`.
"OpenStdout" : false,
"Container" : {
"State" : {
"Status" : "running",
"Running" : true,
"Paused" : false,
"Restarting" : false,

View file

@ -49,6 +49,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