summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2021-02-03 12:05:40 -0500
committerGitHub <noreply@github.com>2021-02-03 12:05:40 -0500
commit301e54deb31aab0f84c021c2200fa1d8e3b0d323 (patch)
tree6b724bebf7343e7177abc733153c3b7ce3ce7bd6
parente8db5bb6e3434f7cf22364048d55bf5f079c58b8 (diff)
parentd87f54fbba8cfdb7a04e50a1427cd17c8a0b06cd (diff)
downloadpodman-301e54deb31aab0f84c021c2200fa1d8e3b0d323.tar.gz
podman-301e54deb31aab0f84c021c2200fa1d8e3b0d323.tar.bz2
podman-301e54deb31aab0f84c021c2200fa1d8e3b0d323.zip
Merge pull request #9214 from rhatdan/wait
Fix invalid wait condition on kill
-rw-r--r--pkg/api/handlers/compat/containers.go4
-rw-r--r--test/python/docker/test_containers.py9
2 files changed, 11 insertions, 2 deletions
diff --git a/pkg/api/handlers/compat/containers.go b/pkg/api/handlers/compat/containers.go
index b41987800..86508f938 100644
--- a/pkg/api/handlers/compat/containers.go
+++ b/pkg/api/handlers/compat/containers.go
@@ -233,8 +233,8 @@ func KillContainer(w http.ResponseWriter, r *http.Request) {
return
}
if sig == 0 || syscall.Signal(sig) == syscall.SIGKILL {
- var opts entities.WaitOptions
- if _, err := containerEngine.ContainerWait(r.Context(), []string{name}, opts); err != nil {
+ if _, err := utils.WaitContainer(w, r); err != nil {
+
utils.Error(w, "Something went wrong.", http.StatusInternalServerError, err)
return
}
diff --git a/test/python/docker/test_containers.py b/test/python/docker/test_containers.py
index 01e049ed4..5c2a5fef2 100644
--- a/test/python/docker/test_containers.py
+++ b/test/python/docker/test_containers.py
@@ -95,6 +95,15 @@ class TestContainers(unittest.TestCase):
top.reload()
self.assertIn(top.status, ("stopped", "exited"))
+ def test_kill_container(self):
+ top = self.client.containers.get(TestContainers.topContainerId)
+ self.assertEqual(top.status, "running")
+
+ # Kill a running container and validate the state
+ top.kill()
+ top.reload()
+ self.assertIn(top.status, ("stopped", "exited"))
+
def test_restart_container(self):
# Validate the container state
top = self.client.containers.get(TestContainers.topContainerId)