summaryrefslogtreecommitdiff
path: root/cmd/podman/utils.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2018-12-06 08:59:13 -0800
committerGitHub <noreply@github.com>2018-12-06 08:59:13 -0800
commit5c6e02b55be974f08e3b1e895046a3cf167fd3f7 (patch)
tree7d0e2a5a0ec706e5f4dc6b12ddbb8a1002232b24 /cmd/podman/utils.go
parent3e60de629d5feaff1ac15173b4ff1e5325dfa5dc (diff)
parent375831e97693af4d894cf647af4dad57ef21948d (diff)
downloadpodman-5c6e02b55be974f08e3b1e895046a3cf167fd3f7.tar.gz
podman-5c6e02b55be974f08e3b1e895046a3cf167fd3f7.tar.bz2
podman-5c6e02b55be974f08e3b1e895046a3cf167fd3f7.zip
Merge pull request #1904 from umohnani8/volume
Add "podman volume" command
Diffstat (limited to 'cmd/podman/utils.go')
-rw-r--r--cmd/podman/utils.go34
1 files changed, 32 insertions, 2 deletions
diff --git a/cmd/podman/utils.go b/cmd/podman/utils.go
index 5735156c2..a59535b43 100644
--- a/cmd/podman/utils.go
+++ b/cmd/podman/utils.go
@@ -3,6 +3,9 @@ package main
import (
"context"
"fmt"
+ "os"
+ gosignal "os/signal"
+
"github.com/containers/libpod/libpod"
"github.com/docker/docker/pkg/signal"
"github.com/docker/docker/pkg/term"
@@ -11,8 +14,6 @@ import (
"github.com/urfave/cli"
"golang.org/x/crypto/ssh/terminal"
"k8s.io/client-go/tools/remotecommand"
- "os"
- gosignal "os/signal"
)
type RawTtyFormatter struct {
@@ -208,6 +209,35 @@ func getPodsFromContext(c *cli.Context, r *libpod.Runtime) ([]*libpod.Pod, error
return pods, lastError
}
+func getVolumesFromContext(c *cli.Context, r *libpod.Runtime) ([]*libpod.Volume, error) {
+ args := c.Args()
+ var (
+ vols []*libpod.Volume
+ lastError error
+ err error
+ )
+
+ if c.Bool("all") {
+ vols, err = r.Volumes()
+ if err != nil {
+ return nil, errors.Wrapf(err, "unable to get all volumes")
+ }
+ }
+
+ for _, i := range args {
+ vol, err := r.GetVolume(i)
+ if err != nil {
+ if lastError != nil {
+ logrus.Errorf("%q", lastError)
+ }
+ lastError = errors.Wrapf(err, "unable to find volume %s", i)
+ continue
+ }
+ vols = append(vols, vol)
+ }
+ return vols, lastError
+}
+
//printParallelOutput takes the map of parallel worker results and outputs them
// to stdout
func printParallelOutput(m map[string]error, errCount int) error {