diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2020-03-21 12:25:30 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-21 12:25:30 +0100 |
commit | e1f2851976fb66b92779fcb45a2ae2117923ca4e (patch) | |
tree | 4f789d462153e21eb572267705b9b23d388119b1 /cmd | |
parent | 77187daf07281854306f94452ca2bccad6215b7e (diff) | |
parent | 0feec5de985ba2117fffb61b50b08563e67725dc (diff) | |
download | podman-e1f2851976fb66b92779fcb45a2ae2117923ca4e.tar.gz podman-e1f2851976fb66b92779fcb45a2ae2117923ca4e.tar.bz2 podman-e1f2851976fb66b92779fcb45a2ae2117923ca4e.zip |
Merge pull request #5578 from baude/v2podexists
podmanv2 pod exists
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/podmanV2/containers/exists.go | 1 | ||||
-rw-r--r-- | cmd/podmanV2/pods/exists.go | 43 |
2 files changed, 44 insertions, 0 deletions
diff --git a/cmd/podmanV2/containers/exists.go b/cmd/podmanV2/containers/exists.go index 3aff150be..22c798fcd 100644 --- a/cmd/podmanV2/containers/exists.go +++ b/cmd/podmanV2/containers/exists.go @@ -19,6 +19,7 @@ var ( Example: `podman container exists containerID podman container exists myctr || podman run --name myctr [etc...]`, RunE: exists, + Args: cobra.ExactArgs(1), } ) diff --git a/cmd/podmanV2/pods/exists.go b/cmd/podmanV2/pods/exists.go new file mode 100644 index 000000000..e37f2ebd7 --- /dev/null +++ b/cmd/podmanV2/pods/exists.go @@ -0,0 +1,43 @@ +package pods + +import ( + "context" + "os" + + "github.com/containers/libpod/cmd/podmanV2/registry" + "github.com/containers/libpod/pkg/domain/entities" + "github.com/spf13/cobra" +) + +var ( + podExistsDescription = `If the named pod exists in local storage, podman pod exists exits with 0, otherwise the exit code will be 1.` + + existsCommand = &cobra.Command{ + Use: "exists POD", + Short: "Check if a pod exists in local storage", + Long: podExistsDescription, + RunE: exists, + Args: cobra.ExactArgs(1), + Example: `podman pod exists podID + podman pod exists mypod || podman pod create --name mypod`, + } +) + +func init() { + registry.Commands = append(registry.Commands, registry.CliCommand{ + Mode: []entities.EngineMode{entities.ABIMode, entities.TunnelMode}, + Command: existsCommand, + Parent: podCmd, + }) +} + +func exists(cmd *cobra.Command, args []string) error { + response, err := registry.ContainerEngine().PodExists(context.Background(), args[0]) + if err != nil { + return err + } + if !response.Value { + os.Exit(1) + } + return nil +} |