summaryrefslogtreecommitdiff
path: root/cmd/podman/network_list.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2019-08-16 17:33:31 +0200
committerGitHub <noreply@github.com>2019-08-16 17:33:31 +0200
commit704cc582ac37fbbb7c8241a1cc09540f4976ed12 (patch)
tree57bb887e113b307a39865eb38d2b733e01c59f1c /cmd/podman/network_list.go
parent2d47f1ae5425faa6800606092e997bd565dc3a1c (diff)
parent6220ef1488d3e135c332c265fdb6a3c7b240b561 (diff)
downloadpodman-704cc582ac37fbbb7c8241a1cc09540f4976ed12.tar.gz
podman-704cc582ac37fbbb7c8241a1cc09540f4976ed12.tar.bz2
podman-704cc582ac37fbbb7c8241a1cc09540f4976ed12.zip
Merge pull request #3719 from baude/networklist
inclusion of podman network
Diffstat (limited to 'cmd/podman/network_list.go')
-rw-r--r--cmd/podman/network_list.go53
1 files changed, 53 insertions, 0 deletions
diff --git a/cmd/podman/network_list.go b/cmd/podman/network_list.go
new file mode 100644
index 000000000..16edf743b
--- /dev/null
+++ b/cmd/podman/network_list.go
@@ -0,0 +1,53 @@
+// +build !remoteclient
+
+package main
+
+import (
+ "errors"
+ "github.com/containers/libpod/cmd/podman/cliconfig"
+ "github.com/containers/libpod/pkg/adapter"
+ "github.com/containers/libpod/pkg/rootless"
+ "github.com/spf13/cobra"
+)
+
+var (
+ networklistCommand cliconfig.NetworkListValues
+ networklistDescription = `List networks`
+ _networklistCommand = &cobra.Command{
+ Use: "ls",
+ Args: noSubArgs,
+ Short: "network list",
+ Long: networklistDescription,
+ RunE: func(cmd *cobra.Command, args []string) error {
+ networklistCommand.InputArgs = args
+ networklistCommand.GlobalFlags = MainGlobalOpts
+ networklistCommand.Remote = remoteclient
+ return networklistCmd(&networklistCommand)
+ },
+ Example: `podman network list`,
+ }
+)
+
+func init() {
+ networklistCommand.Command = _networklistCommand
+ networklistCommand.SetHelpTemplate(HelpTemplate())
+ networklistCommand.SetUsageTemplate(UsageTemplate())
+ flags := networklistCommand.Flags()
+ // TODO enable filters based on something
+ //flags.StringSliceVarP(&networklistCommand.Filter, "filter", "f", []string{}, "Pause all running containers")
+ flags.BoolVarP(&networklistCommand.Quiet, "quiet", "q", false, "display only names")
+}
+
+func networklistCmd(c *cliconfig.NetworkListValues) error {
+ if rootless.IsRootless() && !remoteclient {
+ return errors.New("network list is not supported for rootless mode")
+ }
+ if len(c.InputArgs) > 0 {
+ return errors.New("network list takes no arguments")
+ }
+ runtime, err := adapter.GetRuntimeNoStore(getContext(), &c.PodmanCommand)
+ if err != nil {
+ return err
+ }
+ return runtime.NetworkList(c)
+}