func runList(dockerCli *client.DockerCli, opts listOptions) error { client := dockerCli.Client() netFilterArgs := filters.NewArgs() for _, f := range opts.filter { var err error netFilterArgs, err = filters.ParseFlag(f, netFilterArgs) if err != nil { return err } } options := types.NetworkListOptions{ Filters: netFilterArgs, } networkResources, err := client.NetworkList(context.Background(), options) if err != nil { return err } w := tabwriter.NewWriter(dockerCli.Out(), 20, 1, 3, ' ', 0) if !opts.quiet { fmt.Fprintf(w, "NETWORK ID\tNAME\tDRIVER\tSCOPE") fmt.Fprintf(w, "\n") } sort.Sort(byNetworkName(networkResources)) for _, networkResource := range networkResources { ID := networkResource.ID netName := networkResource.Name driver := networkResource.Driver scope := networkResource.Scope if !opts.noTrunc { ID = stringid.TruncateID(ID) } if opts.quiet { fmt.Fprintln(w, ID) continue } fmt.Fprintf(w, "%s\t%s\t%s\t%s\t", ID, netName, driver, scope) fmt.Fprint(w, "\n") } w.Flush() return nil }
func runList(dockerCli *client.DockerCli, opts listOptions) error { client := dockerCli.Client() netFilterArgs := filters.NewArgs() for _, f := range opts.filter { var err error netFilterArgs, err = filters.ParseFlag(f, netFilterArgs) if err != nil { return err } } options := types.NetworkListOptions{ Filters: netFilterArgs, } networkResources, err := client.NetworkList(context.Background(), options) if err != nil { return err } f := opts.format if len(f) == 0 { if len(dockerCli.ConfigFile().NetworksFormat) > 0 && !opts.quiet { f = dockerCli.ConfigFile().NetworksFormat } else { f = "table" } } sort.Sort(byNetworkName(networkResources)) networksCtx := formatter.NetworkContext{ Context: formatter.Context{ Output: dockerCli.Out(), Format: f, Quiet: opts.quiet, Trunc: !opts.noTrunc, }, Networks: networkResources, } networksCtx.Write() return nil }