summaryrefslogtreecommitdiff
path: root/cmd/podman/volumes
diff options
context:
space:
mode:
authorJakub Guzik <jguzik@redhat.com>2021-12-13 11:21:31 +0100
committerJakub Guzik <jguzik@redhat.com>2021-12-14 10:41:03 +0100
commit50501f49a327a2f5c7f1c6746f9fde482c877387 (patch)
tree26781fbc9830785e9442d42378dcb2d0ec9c769a /cmd/podman/volumes
parent4543fd463e3d02aea42f1a5b6ed0d2ed190de655 (diff)
downloadpodman-50501f49a327a2f5c7f1c6746f9fde482c877387.tar.gz
podman-50501f49a327a2f5c7f1c6746f9fde482c877387.tar.bz2
podman-50501f49a327a2f5c7f1c6746f9fde482c877387.zip
Add secret list --filter to cli
This PR is a follow-up of #11431. It adds possibility of filtering secret list based on id and name. Signed-off-by: Jakub Guzik <jguzik@redhat.com>
Diffstat (limited to 'cmd/podman/volumes')
-rw-r--r--cmd/podman/volumes/list.go13
-rw-r--r--cmd/podman/volumes/prune.go3
2 files changed, 9 insertions, 7 deletions
diff --git a/cmd/podman/volumes/list.go b/cmd/podman/volumes/list.go
index c372527de..97fa2c61f 100644
--- a/cmd/podman/volumes/list.go
+++ b/cmd/podman/volumes/list.go
@@ -4,11 +4,11 @@ import (
"context"
"fmt"
"os"
- "strings"
"github.com/containers/common/pkg/completion"
"github.com/containers/common/pkg/report"
"github.com/containers/podman/v3/cmd/podman/common"
+ "github.com/containers/podman/v3/cmd/podman/parse"
"github.com/containers/podman/v3/cmd/podman/registry"
"github.com/containers/podman/v3/cmd/podman/validate"
"github.com/containers/podman/v3/libpod/define"
@@ -64,19 +64,18 @@ func init() {
}
func list(cmd *cobra.Command, args []string) error {
+ var err error
if cliOpts.Quiet && cmd.Flag("format").Changed {
return errors.New("quiet and format flags cannot be used together")
}
if len(cliOpts.Filter) > 0 {
lsOpts.Filter = make(map[string][]string)
}
- for _, f := range cliOpts.Filter {
- filterSplit := strings.SplitN(f, "=", 2)
- if len(filterSplit) < 2 {
- return errors.Errorf("filter input must be in the form of filter=value: %s is invalid", f)
- }
- lsOpts.Filter[filterSplit[0]] = append(lsOpts.Filter[filterSplit[0]], filterSplit[1])
+ lsOpts.Filter, err = parse.FilterArgumentsIntoFilters(cliOpts.Filter)
+ if err != nil {
+ return err
}
+
responses, err := registry.ContainerEngine().VolumeList(context.Background(), lsOpts)
if err != nil {
return err
diff --git a/cmd/podman/volumes/prune.go b/cmd/podman/volumes/prune.go
index 1f3cc6913..43b529768 100644
--- a/cmd/podman/volumes/prune.go
+++ b/cmd/podman/volumes/prune.go
@@ -58,6 +58,9 @@ func prune(cmd *cobra.Command, args []string) error {
return err
}
pruneOptions.Filters, err = parse.FilterArgumentsIntoFilters(filter)
+ if err != nil {
+ return err
+ }
if !force {
reader := bufio.NewReader(os.Stdin)
fmt.Println("WARNING! This will remove all volumes not used by at least one container. The following volumes will be removed:")