Merge pull request #7428 from mheon/apiv2_container_pod_errors

Ensure pod REST API endpoints include ctr errors
This commit is contained in:
OpenShift Merge Robot 2020-08-28 09:59:37 -04:00 committed by GitHub
commit 0640cc7921
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 15 deletions

View File

@ -135,8 +135,8 @@ func PodStop(w http.ResponseWriter, r *http.Request) {
} }
} }
var errs []error //nolint var errs []error //nolint
for _, err := range responses { for id, err := range responses {
errs = append(errs, err) errs = append(errs, errors.Wrapf(err, "error stopping container %s", id))
} }
report := entities.PodStopReport{ report := entities.PodStopReport{
Errs: errs, Errs: errs,
@ -164,12 +164,12 @@ func PodStart(w http.ResponseWriter, r *http.Request) {
return return
} }
responses, err := pod.Start(r.Context()) responses, err := pod.Start(r.Context())
if err != nil { if err != nil && errors.Cause(err) != define.ErrPodPartialFail {
utils.Error(w, "Something went wrong", http.StatusInternalServerError, err) utils.Error(w, "Something went wrong", http.StatusInternalServerError, err)
return return
} }
for _, err := range responses { for id, err := range responses {
errs = append(errs, err) errs = append(errs, errors.Wrapf(err, "error starting container %s", id))
} }
report := entities.PodStartReport{ report := entities.PodStartReport{
Errs: errs, Errs: errs,
@ -220,12 +220,12 @@ func PodRestart(w http.ResponseWriter, r *http.Request) {
return return
} }
responses, err := pod.Restart(r.Context()) responses, err := pod.Restart(r.Context())
if err != nil { if err != nil && errors.Cause(err) != define.ErrPodPartialFail {
utils.Error(w, "Something went wrong", http.StatusInternalServerError, err) utils.Error(w, "Something went wrong", http.StatusInternalServerError, err)
return return
} }
for _, err := range responses { for id, err := range responses {
errs = append(errs, err) errs = append(errs, errors.Wrapf(err, "error restarting container %s", id))
} }
report := entities.PodRestartReport{ report := entities.PodRestartReport{
Errs: errs, Errs: errs,
@ -271,12 +271,12 @@ func PodPause(w http.ResponseWriter, r *http.Request) {
return return
} }
responses, err := pod.Pause() responses, err := pod.Pause()
if err != nil { if err != nil && errors.Cause(err) != define.ErrPodPartialFail {
utils.Error(w, "Something went wrong", http.StatusInternalServerError, err) utils.Error(w, "Something went wrong", http.StatusInternalServerError, err)
return return
} }
for _, v := range responses { for id, v := range responses {
errs = append(errs, v) errs = append(errs, errors.Wrapf(v, "error pausing container %s", id))
} }
report := entities.PodPauseReport{ report := entities.PodPauseReport{
Errs: errs, Errs: errs,
@ -295,12 +295,12 @@ func PodUnpause(w http.ResponseWriter, r *http.Request) {
return return
} }
responses, err := pod.Unpause() responses, err := pod.Unpause()
if err != nil { if err != nil && errors.Cause(err) != define.ErrPodPartialFail {
utils.Error(w, "failed to pause pod", http.StatusInternalServerError, err) utils.Error(w, "failed to pause pod", http.StatusInternalServerError, err)
return return
} }
for _, v := range responses { for id, v := range responses {
errs = append(errs, v) errs = append(errs, errors.Wrapf(v, "error unpausing container %s", id))
} }
report := entities.PodUnpauseReport{ report := entities.PodUnpauseReport{
Errs: errs, Errs: errs,
@ -403,7 +403,7 @@ func PodKill(w http.ResponseWriter, r *http.Request) {
} }
responses, err := pod.Kill(uint(sig)) responses, err := pod.Kill(uint(sig))
if err != nil { if err != nil && errors.Cause(err) != define.ErrPodPartialFail {
utils.Error(w, "failed to kill pod", http.StatusInternalServerError, err) utils.Error(w, "failed to kill pod", http.StatusInternalServerError, err)
return return
} }