Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 32dbb5c46569fbd404a88775c5eb58b5da0b9240)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
... | ... |
@@ -4135,6 +4135,30 @@ func (s *DockerSuite) TestRunRmAndWait(c *check.C) { |
4135 | 4135 |
c.Assert(code, checker.Equals, 0) |
4136 | 4136 |
} |
4137 | 4137 |
|
4138 |
+// Test that auto-remove is performed by the daemon (API 1.25 and above) |
|
4139 |
+func (s *DockerSuite) TestRunRm(c *check.C) { |
|
4140 |
+ name := "miss-me-when-im-gone" |
|
4141 |
+ dockerCmd(c, "run", "--name="+name, "--rm", "busybox") |
|
4142 |
+ |
|
4143 |
+ _, err := inspectFieldWithError(name, "name") |
|
4144 |
+ c.Assert(err, checker.Not(check.IsNil)) |
|
4145 |
+ c.Assert(err.Error(), checker.Contains, "No such object: "+name) |
|
4146 |
+} |
|
4147 |
+ |
|
4148 |
+// Test that auto-remove is performed by the client on API versions that do not support daemon-side api-remove (API < 1.25) |
|
4149 |
+func (s *DockerSuite) TestRunRmPre125Api(c *check.C) { |
|
4150 |
+ name := "miss-me-when-im-gone" |
|
4151 |
+ result := icmd.RunCmd(icmd.Cmd{ |
|
4152 |
+ Command: binaryWithArgs("run", "--name="+name, "--rm", "busybox"), |
|
4153 |
+ Env: appendBaseEnv(false, "DOCKER_API_VERSION=1.24"), |
|
4154 |
+ }) |
|
4155 |
+ c.Assert(result, icmd.Matches, icmd.Success) |
|
4156 |
+ |
|
4157 |
+ _, err := inspectFieldWithError(name, "name") |
|
4158 |
+ c.Assert(err, checker.Not(check.IsNil)) |
|
4159 |
+ c.Assert(err.Error(), checker.Contains, "No such object: "+name) |
|
4160 |
+} |
|
4161 |
+ |
|
4138 | 4162 |
// Test case for #23498 |
4139 | 4163 |
func (s *DockerSuite) TestRunUnsetEntrypoint(c *check.C) { |
4140 | 4164 |
testRequires(c, DaemonIsLinux) |