From 393fa4b92f2ba6f3b3e2e17d33ab0243eef1d063 Mon Sep 17 00:00:00 2001 From: Jordan Christiansen Date: Wed, 23 Sep 2020 14:58:33 -0500 Subject: Allow filtering on pod label values Before this change, filters of the form `podman pod ps --filter label=app=myapp` were not working. The results would include all pods that contained the app label with any value. Looking at the code, this makes sense. It appears that the second = and everything after it were getting truncated. Even though there was already a passing test that tested `podman pod ps --filter label=io.podman.test.label=value1`, the test failed with the above example with a label `app=myapp`. The new code works in both cases. Signed-off-by: Jordan Christiansen --- cmd/podman/pods/ps.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'cmd/podman') diff --git a/cmd/podman/pods/ps.go b/cmd/podman/pods/ps.go index 97e528c7c..7b755cb22 100644 --- a/cmd/podman/pods/ps.go +++ b/cmd/podman/pods/ps.go @@ -73,7 +73,7 @@ func pods(cmd *cobra.Command, _ []string) error { if cmd.Flag("filter").Changed { psInput.Filters = make(map[string][]string) for _, f := range inputFilters { - split := strings.Split(f, "=") + split := strings.SplitN(f, "=", 2) if len(split) < 2 { return errors.Errorf("filter input must be in the form of filter=value: %s is invalid", f) } -- cgit v1.2.3-54-g00ecf