|
@@ -26,6 +26,7 @@ var (
|
|
|
}
|
|
|
)
|
|
|
|
|
|
+// CmdNetwork handles the root Network UI
|
|
|
func (cli *NetworkCli) CmdNetwork(chain string, args ...string) error {
|
|
|
cmd := cli.Subcmd(chain, "network", "COMMAND [OPTIONS] [arg...]", networkUsage(chain), false)
|
|
|
cmd.Require(flag.Min, 1)
|
|
@@ -37,17 +38,6 @@ func (cli *NetworkCli) CmdNetwork(chain string, args ...string) error {
|
|
|
return err
|
|
|
}
|
|
|
|
|
|
-func networkUsage(chain string) string {
|
|
|
- help := "Commands:\n"
|
|
|
-
|
|
|
- for _, cmd := range networkCommands {
|
|
|
- help += fmt.Sprintf(" %-10.10s%s\n", cmd.name, cmd.description)
|
|
|
- }
|
|
|
-
|
|
|
- help += fmt.Sprintf("\nRun '%s network COMMAND --help' for more information on a command.", chain)
|
|
|
- return help
|
|
|
-}
|
|
|
-
|
|
|
// CmdNetworkCreate handles Network Create UI
|
|
|
func (cli *NetworkCli) CmdNetworkCreate(chain string, args ...string) error {
|
|
|
cmd := cli.Subcmd(chain, "create", "NETWORK-NAME", "Creates a new network with a name specified by the user", false)
|
|
@@ -60,8 +50,10 @@ func (cli *NetworkCli) CmdNetworkCreate(chain string, args ...string) error {
|
|
|
if *flDriver == "" {
|
|
|
*flDriver = nullNetType
|
|
|
}
|
|
|
- // TODO : Proper Backend handling
|
|
|
- obj, _, err := readBody(cli.call("POST", "/networks/"+args[0], nil, nil))
|
|
|
+
|
|
|
+ nc := networkCreate{Name: cmd.Arg(0), NetworkType: *flDriver}
|
|
|
+
|
|
|
+ obj, _, err := readBody(cli.call("POST", "/networks/name/"+cmd.Arg(0), nc, nil))
|
|
|
if err != nil {
|
|
|
fmt.Fprintf(cli.err, "%s", err.Error())
|
|
|
return err
|
|
@@ -80,8 +72,7 @@ func (cli *NetworkCli) CmdNetworkRm(chain string, args ...string) error {
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
|
- // TODO : Proper Backend handling
|
|
|
- obj, _, err := readBody(cli.call("DELETE", "/networks/"+args[0], nil, nil))
|
|
|
+ obj, _, err := readBody(cli.call("DELETE", "/networks/name/"+cmd.Arg(0), nil, nil))
|
|
|
if err != nil {
|
|
|
fmt.Fprintf(cli.err, "%s", err.Error())
|
|
|
return err
|
|
@@ -99,7 +90,6 @@ func (cli *NetworkCli) CmdNetworkLs(chain string, args ...string) error {
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
|
- // TODO : Proper Backend handling
|
|
|
obj, _, err := readBody(cli.call("GET", "/networks", nil, nil))
|
|
|
if err != nil {
|
|
|
fmt.Fprintf(cli.err, "%s", err.Error())
|
|
@@ -119,8 +109,7 @@ func (cli *NetworkCli) CmdNetworkInfo(chain string, args ...string) error {
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
|
- // TODO : Proper Backend handling
|
|
|
- obj, _, err := readBody(cli.call("GET", "/networks/"+args[0], nil, nil))
|
|
|
+ obj, _, err := readBody(cli.call("GET", "/networks/name/"+cmd.Arg(0), nil, nil))
|
|
|
if err != nil {
|
|
|
fmt.Fprintf(cli.err, "%s", err.Error())
|
|
|
return err
|
|
@@ -131,46 +120,13 @@ func (cli *NetworkCli) CmdNetworkInfo(chain string, args ...string) error {
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
-// CmdNetworkJoin handles the UI to let a Container join a Network via an endpoint
|
|
|
-// Sample UI : <chain> network join <container-name/id> <network-name/id> [<endpoint-name>]
|
|
|
-func (cli *NetworkCli) CmdNetworkJoin(chain string, args ...string) error {
|
|
|
- cmd := cli.Subcmd(chain, "join", "CONTAINER-NAME/ID NETWORK-NAME/ID [ENDPOINT-NAME]",
|
|
|
- chain+" join", false)
|
|
|
- cmd.Require(flag.Min, 2)
|
|
|
- err := cmd.ParseFlags(args, true)
|
|
|
- if err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
- // TODO : Proper Backend handling
|
|
|
- obj, _, err := readBody(cli.call("POST", "/endpoints/", nil, nil))
|
|
|
- if err != nil {
|
|
|
- fmt.Fprintf(cli.err, "%s", err.Error())
|
|
|
- return err
|
|
|
- }
|
|
|
- if _, err := io.Copy(cli.out, bytes.NewReader(obj)); err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
- return nil
|
|
|
-}
|
|
|
+func networkUsage(chain string) string {
|
|
|
+ help := "Commands:\n"
|
|
|
|
|
|
-// CmdNetworkLeave handles the UI to let a Container disconnect from a Network
|
|
|
-// Sample UI : <chain> network leave <container-name/id> <network-name/id>
|
|
|
-func (cli *NetworkCli) CmdNetworkLeave(chain string, args ...string) error {
|
|
|
- cmd := cli.Subcmd(chain, "leave", "CONTAINER-NAME/ID NETWORK-NAME/ID",
|
|
|
- chain+" leave", false)
|
|
|
- cmd.Require(flag.Min, 2)
|
|
|
- err := cmd.ParseFlags(args, true)
|
|
|
- if err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
- // TODO : Proper Backend handling
|
|
|
- obj, _, err := readBody(cli.call("PUT", "/endpoints/", nil, nil))
|
|
|
- if err != nil {
|
|
|
- fmt.Fprintf(cli.err, "%s", err.Error())
|
|
|
- return err
|
|
|
- }
|
|
|
- if _, err := io.Copy(cli.out, bytes.NewReader(obj)); err != nil {
|
|
|
- return err
|
|
|
+ for _, cmd := range networkCommands {
|
|
|
+ help += fmt.Sprintf(" %-10.10s%s\n", cmd.name, cmd.description)
|
|
|
}
|
|
|
- return nil
|
|
|
+
|
|
|
+ help += fmt.Sprintf("\nRun '%s network COMMAND --help' for more information on a command.", chain)
|
|
|
+ return help
|
|
|
}
|