|
@@ -4,6 +4,10 @@ import (
|
|
|
"github.com/docker/docker/pkg/integration/checker"
|
|
|
"github.com/go-check/check"
|
|
|
|
|
|
+ "io/ioutil"
|
|
|
+ "os"
|
|
|
+ "os/exec"
|
|
|
+ "path/filepath"
|
|
|
"strings"
|
|
|
)
|
|
|
|
|
@@ -26,7 +30,16 @@ func (s *DockerSuite) TestPluginBasicOps(c *check.C) {
|
|
|
|
|
|
out, _, err = dockerCmdWithError("plugin", "inspect", pNameWithTag)
|
|
|
c.Assert(err, checker.IsNil)
|
|
|
- c.Assert(out, checker.Contains, "A test plugin for Docker")
|
|
|
+ tmpFile, err := ioutil.TempFile("", "inspect.json")
|
|
|
+ c.Assert(err, checker.IsNil)
|
|
|
+ defer tmpFile.Close()
|
|
|
+
|
|
|
+ if _, err := tmpFile.Write([]byte(out)); err != nil {
|
|
|
+ c.Fatal(err)
|
|
|
+ }
|
|
|
+ // FIXME: When `docker plugin inspect` takes a format as input, jq can be replaced.
|
|
|
+ id, err := exec.Command("jq", ".Id", "--raw-output", tmpFile.Name()).CombinedOutput()
|
|
|
+ c.Assert(err, checker.IsNil)
|
|
|
|
|
|
out, _, err = dockerCmdWithError("plugin", "remove", pNameWithTag)
|
|
|
c.Assert(out, checker.Contains, "is active")
|
|
@@ -37,6 +50,11 @@ func (s *DockerSuite) TestPluginBasicOps(c *check.C) {
|
|
|
out, _, err = dockerCmdWithError("plugin", "remove", pNameWithTag)
|
|
|
c.Assert(err, checker.IsNil)
|
|
|
c.Assert(out, checker.Contains, pNameWithTag)
|
|
|
+
|
|
|
+ _, err = os.Stat(filepath.Join(dockerBasePath, "plugins", string(id)))
|
|
|
+ if !os.IsNotExist(err) {
|
|
|
+ c.Fatal(err)
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func (s *DockerSuite) TestPluginInstallDisable(c *check.C) {
|