summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2022-04-25 03:38:03 -0400
committerGitHub <noreply@github.com>2022-04-25 03:38:03 -0400
commitba6356280a86531d3cda7016859aef98bb3d8272 (patch)
tree74b087a2cf032240f4d3566154b5ac1ade62553d
parentf65f3320e1124c94db053c1f811487920ae2a70e (diff)
parent0d83f4b768af46b95d6c5a652b2c56c2ae2093f0 (diff)
downloadpodman-ba6356280a86531d3cda7016859aef98bb3d8272.tar.gz
podman-ba6356280a86531d3cda7016859aef98bb3d8272.tar.bz2
podman-ba6356280a86531d3cda7016859aef98bb3d8272.zip
Merge pull request #13988 from rhatdan/apiv2
Allow filtering of "removing", it is a valid status
-rw-r--r--pkg/domain/filters/containers.go4
-rw-r--r--test/apiv2/20-containers.at4
2 files changed, 6 insertions, 2 deletions
diff --git a/pkg/domain/filters/containers.go b/pkg/domain/filters/containers.go
index 0557e75d6..3e5b9cad9 100644
--- a/pkg/domain/filters/containers.go
+++ b/pkg/domain/filters/containers.go
@@ -52,8 +52,8 @@ func GenerateContainerFilterFuncs(filter string, filterValues []string, r *libpo
}, nil
case "status":
for _, filterValue := range filterValues {
- if !util.StringInSlice(filterValue, []string{"created", "running", "paused", "stopped", "exited", "unknown"}) {
- return nil, errors.Errorf("%s is not a valid status", filterValue)
+ if _, err := define.StringToContainerStatus(filterValue); err != nil {
+ return nil, err
}
}
return func(c *libpod.Container) bool {
diff --git a/test/apiv2/20-containers.at b/test/apiv2/20-containers.at
index 2d5754077..7a38dfea0 100644
--- a/test/apiv2/20-containers.at
+++ b/test/apiv2/20-containers.at
@@ -321,7 +321,11 @@ t GET containers/json?filters='garb1age}' 500 \
t GET containers/json?filters='{"label":["testl' 500 \
.cause="unexpected end of JSON input"
+
#libpod api list containers sanity checks
+t GET libpod/containers/json?filters='{"status":["removing"]}' 200 length=0
+t GET libpod/containers/json?filters='{"status":["bogus"]}' 500 \
+ .cause="invalid argument"
t GET libpod/containers/json?filters='garb1age}' 500 \
.cause="invalid character 'g' looking for beginning of value"
t GET libpod/containers/json?filters='{"label":["testl' 500 \