diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-02-03 12:05:40 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-03 12:05:40 -0500 |
commit | 301e54deb31aab0f84c021c2200fa1d8e3b0d323 (patch) | |
tree | 6b724bebf7343e7177abc733153c3b7ce3ce7bd6 | |
parent | e8db5bb6e3434f7cf22364048d55bf5f079c58b8 (diff) | |
parent | d87f54fbba8cfdb7a04e50a1427cd17c8a0b06cd (diff) | |
download | podman-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.go | 4 | ||||
-rw-r--r-- | test/python/docker/test_containers.py | 9 |
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) |