diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-05-07 22:21:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-07 22:21:36 +0200 |
commit | 74dc9a45e3f85b4fc55a2d1cb2786885eb4489f5 (patch) | |
tree | f27f5b26b4076fe8dd2dad3afde8407640c77807 /pkg/adapter/containers_remote.go | |
parent | 2e40bdebfd245ff04e86b1ea42f663087d97fccf (diff) | |
parent | bc7b1ca03da88473c10e59197becd812cf341663 (diff) | |
download | podman-74dc9a45e3f85b4fc55a2d1cb2786885eb4489f5.tar.gz podman-74dc9a45e3f85b4fc55a2d1cb2786885eb4489f5.tar.bz2 podman-74dc9a45e3f85b4fc55a2d1cb2786885eb4489f5.zip |
Merge pull request #2977 from baude/makeitrain
enable integration tests for remote-client
Diffstat (limited to 'pkg/adapter/containers_remote.go')
-rw-r--r-- | pkg/adapter/containers_remote.go | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/pkg/adapter/containers_remote.go b/pkg/adapter/containers_remote.go index c70db13ed..63b0f9d2f 100644 --- a/pkg/adapter/containers_remote.go +++ b/pkg/adapter/containers_remote.go @@ -234,15 +234,25 @@ func (r *LocalRuntime) StopContainers(ctx context.Context, cli *cliconfig.StopVa ids, err := iopodman.GetContainersByContext().Call(r.Conn, cli.All, cli.Latest, cli.InputArgs) if err != nil { - return ok, failures, err + return ok, failures, TranslateError(err) } for _, id := range ids { - stopped, err := iopodman.StopContainer().Call(r.Conn, id, int64(cli.Timeout)) - if err != nil { + if _, err := iopodman.StopContainer().Call(r.Conn, id, int64(cli.Timeout)); err != nil { + transError := TranslateError(err) + if errors.Cause(transError) == libpod.ErrCtrStopped { + ok = append(ok, id) + continue + } + if errors.Cause(transError) == libpod.ErrCtrStateInvalid && cli.All { + ok = append(ok, id) + continue + } failures[id] = err } else { - ok = append(ok, stopped) + // We should be using ID here because in varlink, only successful returns + // include the string id + ok = append(ok, id) } } return ok, failures, nil @@ -310,7 +320,7 @@ func (r *LocalRuntime) KillContainers(ctx context.Context, cli *cliconfig.KillVa func (r *LocalRuntime) RemoveContainers(ctx context.Context, cli *cliconfig.RmValues) ([]string, map[string]error, error) { ids, err := iopodman.GetContainersByContext().Call(r.Conn, cli.All, cli.Latest, cli.InputArgs) if err != nil { - return nil, nil, err + return nil, nil, TranslateError(err) } var ( |