From 2d381c7b09aa347c79160ac5c570983b6dcc199c Mon Sep 17 00:00:00 2001 From: "Guillaume J. Charmes" Date: Thu, 6 Jun 2013 15:56:09 -0700 Subject: [PATCH] Allow to docker build URL Upstream-commit: 01f446e908305efb86f9cbfbbe3302366a6ccd45 Component: engine --- components/engine/commands.go | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/components/engine/commands.go b/components/engine/commands.go index 50aaac8fb1..50cca552c0 100644 --- a/components/engine/commands.go +++ b/components/engine/commands.go @@ -157,6 +157,13 @@ func (cli *DockerCli) CmdBuild(args ...string) error { if cmd.Arg(0) == "-" { file = os.Stdin + } else if utils.IsURL(cmd.Arg(0)) { + f, err := utils.Download(cmd.Arg(0), ioutil.Discard) + if err != nil { + return err + } + defer f.Body.Close() + file = f.Body } else { // Send Dockerfile from arg/Dockerfile (deprecate later) f, err := os.Open(path.Join(cmd.Arg(0), "Dockerfile")) @@ -289,15 +296,12 @@ func (cli *DockerCli) CmdLogin(args ...string) error { return err } - var out auth.AuthConfig - err = json.Unmarshal(body, &out) - if err != nil { + out := &auth.AuthConfig{} + if err := json.Unmarshal(body, out); err != nil { return err } - var username string - var password string - var email string + var username, password, email string fmt.Print("Username (", out.Username, "): ") username = readAndEchoString(os.Stdin, os.Stdout) @@ -330,9 +334,8 @@ func (cli *DockerCli) CmdLogin(args ...string) error { return err } - var out2 APIAuth - err = json.Unmarshal(body, &out2) - if err != nil { + out2 := &APIAuth{} + if err := json.Unmarshal(body, &out2); err != nil { return err } if out2.Status != "" {