diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2020-10-19 02:49:27 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-19 02:49:27 -0400 |
commit | 7ffcab0854342844a44b2668bd9d98849bf935c8 (patch) | |
tree | c7c8b60c8d389314309c7e2e73e3b41f06988fbc /pkg/domain/infra/abi | |
parent | 6ec96dc009d73cc2b0a3fa81149ca599b04252e4 (diff) | |
parent | 571ae9db7241ffbe1be4f254328cfd2e43369103 (diff) | |
download | podman-7ffcab0854342844a44b2668bd9d98849bf935c8.tar.gz podman-7ffcab0854342844a44b2668bd9d98849bf935c8.tar.bz2 podman-7ffcab0854342844a44b2668bd9d98849bf935c8.zip |
Merge pull request #7908 from rhatdan/diff
fix podman container exists and diff for storage containers
Diffstat (limited to 'pkg/domain/infra/abi')
-rw-r--r-- | pkg/domain/infra/abi/containers.go | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/pkg/domain/infra/abi/containers.go b/pkg/domain/infra/abi/containers.go index 614fd5fe0..60dbbce6c 100644 --- a/pkg/domain/infra/abi/containers.go +++ b/pkg/domain/infra/abi/containers.go @@ -74,11 +74,19 @@ func getContainersByContext(all, latest bool, names []string, runtime *libpod.Ru return } -// TODO: Should return *entities.ContainerExistsReport, error -func (ic *ContainerEngine) ContainerExists(ctx context.Context, nameOrID string) (*entities.BoolReport, error) { +// ContainerExists returns whether the container exists in container storage +func (ic *ContainerEngine) ContainerExists(ctx context.Context, nameOrID string, options entities.ContainerExistsOptions) (*entities.BoolReport, error) { _, err := ic.Libpod.LookupContainer(nameOrID) - if err != nil && errors.Cause(err) != define.ErrNoSuchCtr { - return nil, err + if err != nil { + if errors.Cause(err) != define.ErrNoSuchCtr { + return nil, err + } + if options.External { + // Check if container exists in storage + if _, storageErr := ic.Libpod.StorageContainer(nameOrID); storageErr == nil { + err = nil + } + } } return &entities.BoolReport{Value: err == nil}, nil } |