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) |