diff options
author | Brent Baude <bbaude@redhat.com> | 2020-02-27 10:59:53 -0600 |
---|---|---|
committer | Brent Baude <bbaude@redhat.com> | 2020-02-28 09:36:53 -0600 |
commit | 09048731000e73b44a0243a0339d8c122eb8a165 (patch) | |
tree | db939805cbb41f4ddd2db610256ba2186a8367db /pkg/api/handlers/libpod | |
parent | baf27fa25eed668b5a73a1d7d4fe16214f1c260f (diff) | |
download | podman-09048731000e73b44a0243a0339d8c122eb8a165.tar.gz podman-09048731000e73b44a0243a0339d8c122eb8a165.tar.bz2 podman-09048731000e73b44a0243a0339d8c122eb8a165.zip |
rework apiv2 wait endpoint|binding
added the ability to wait on a condition (stopped, running, paused...) for a container. if a condition is not provided, wait will default to the stopped condition which uses the original wait code paths. if the condition is stopped, the container exit code will be returned.
also, correct a mux issue we discovered.
Signed-off-by: Brent Baude <bbaude@redhat.com>
Diffstat (limited to 'pkg/api/handlers/libpod')
-rw-r--r-- | pkg/api/handlers/libpod/containers.go | 1 | ||||
-rw-r--r-- | pkg/api/handlers/libpod/pods.go | 8 |
2 files changed, 3 insertions, 6 deletions
diff --git a/pkg/api/handlers/libpod/containers.go b/pkg/api/handlers/libpod/containers.go index 752b004d8..d8dd0d69b 100644 --- a/pkg/api/handlers/libpod/containers.go +++ b/pkg/api/handlers/libpod/containers.go @@ -178,7 +178,6 @@ func KillContainer(w http.ResponseWriter, r *http.Request) { func WaitContainer(w http.ResponseWriter, r *http.Request) { exitCode, err := utils.WaitContainer(w, r) if err != nil { - utils.InternalServerError(w, err) return } utils.WriteResponse(w, http.StatusOK, strconv.Itoa(int(exitCode))) diff --git a/pkg/api/handlers/libpod/pods.go b/pkg/api/handlers/libpod/pods.go index f5700579b..e8dc5bde2 100644 --- a/pkg/api/handlers/libpod/pods.go +++ b/pkg/api/handlers/libpod/pods.go @@ -13,7 +13,6 @@ import ( "github.com/containers/libpod/pkg/api/handlers" "github.com/containers/libpod/pkg/api/handlers/utils" "github.com/containers/libpod/pkg/util" - "github.com/gorilla/mux" "github.com/gorilla/schema" "github.com/pkg/errors" ) @@ -353,7 +352,7 @@ func PodKill(w http.ResponseWriter, r *http.Request) { signal = "SIGKILL" ) query := struct { - signal string `schema:"signal"` + Signal string `schema:"signal"` }{ // override any golang type defaults } @@ -362,9 +361,8 @@ func PodKill(w http.ResponseWriter, r *http.Request) { errors.Wrapf(err, "Failed to parse parameters for %s", r.URL.String())) return } - muxVars := mux.Vars(r) - if _, found := muxVars["signal"]; found { - signal = query.signal + if _, found := r.URL.Query()["signal"]; found { + signal = query.Signal } sig, err := util.ParseSignal(signal) |