Kaynağa Gözat

check on the client side that there is a Dockerfile, so we don't upload a huge stack of files, only to realise we can't do anything

Sven Dowideit 11 yıl önce
ebeveyn
işleme
26cf8b9aff
1 değiştirilmiş dosya ile 4 ekleme ve 0 silme
  1. 4 0
      commands.go

+ 4 - 0
commands.go

@@ -195,6 +195,10 @@ func (cli *DockerCli) CmdBuild(args ...string) error {
 		if _, err := os.Stat(cmd.Arg(0)); err != nil {
 		if _, err := os.Stat(cmd.Arg(0)); err != nil {
 			return err
 			return err
 		}
 		}
+		filename := path.Join(cmd.Arg(0), "Dockerfile")
+		if _, err = os.Stat(filename); os.IsNotExist(err) {
+			return fmt.Errorf("no Dockerfile found in %s", cmd.Arg(0))
+		}
 		context, err = archive.Tar(cmd.Arg(0), archive.Uncompressed)
 		context, err = archive.Tar(cmd.Arg(0), archive.Uncompressed)
 	}
 	}
 	var body io.Reader
 	var body io.Reader