diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-08-16 17:33:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-16 17:33:31 +0200 |
commit | 704cc582ac37fbbb7c8241a1cc09540f4976ed12 (patch) | |
tree | 57bb887e113b307a39865eb38d2b733e01c59f1c /cmd/podman/network_list.go | |
parent | 2d47f1ae5425faa6800606092e997bd565dc3a1c (diff) | |
parent | 6220ef1488d3e135c332c265fdb6a3c7b240b561 (diff) | |
download | podman-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.go | 53 |
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) +} |