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

Merge pull request #17788 from haoshuwei/modify-volume-inspect-multi

Modify docker volume inspect to return existed volumes and the names of the unexsited volumes
This commit is contained in:
Sebastiaan van Stijn 2015-12-06 14:03:46 +01:00
commit 5b4734aaa5
2 changed files with 20 additions and 1 deletions

View file

@ -5,6 +5,7 @@ import (
"encoding/json"
"fmt"
"io"
"net/http"
"net/url"
"text/tabwriter"
"text/template"
@ -128,7 +129,12 @@ func (cli *DockerCli) CmdVolumeInspect(args ...string) error {
for _, name := range cmd.Args() {
resp, err := cli.call("GET", "/volumes/"+name, nil, nil)
if err != nil {
return err
if resp.statusCode != http.StatusNotFound {
return err
}
status = 1
fmt.Fprintf(cli.err, "Error: No such volume: %s\n", name)
continue
}
var volume types.Volume

View file

@ -50,6 +50,19 @@ func (s *DockerSuite) TestVolumeCliInspect(c *check.C) {
c.Assert(strings.TrimSpace(out), check.Equals, "test")
}
func (s *DockerSuite) TestVolumeCliInspectMulti(c *check.C) {
dockerCmd(c, "volume", "create", "--name", "test1")
dockerCmd(c, "volume", "create", "--name", "test2")
out, _ := dockerCmd(c, "volume", "inspect", "--format='{{ .Name }}'", "test1", "test2", "doesntexist")
outArr := strings.Split(strings.TrimSpace(out), "\n")
c.Assert(len(outArr), check.Equals, 3, check.Commentf("\n%s", out))
c.Assert(strings.Contains(out, "test1\n"), check.Equals, true)
c.Assert(strings.Contains(out, "test2\n"), check.Equals, true)
c.Assert(strings.Contains(out, "Error: No such volume: doesntexist\n"), check.Equals, true)
}
func (s *DockerSuite) TestVolumeCliLs(c *check.C) {
prefix := ""
if daemonPlatform == "windows" {