remove job from image_export

Signed-off-by: He Simei <hesimei@zju.edu.cn>
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Upstream-commit: 2a14b7dd35901167d83735a25ff626596391c4ed
Component: engine
This commit is contained in:
Simei He
2015-04-23 10:54:25 -07:00
committed by Alexander Morozov
parent f1a7f3bc6a
commit bda3c79940
3 changed files with 37 additions and 20 deletions
+23 -8
View File
@@ -887,17 +887,32 @@ func (s *Server) getImagesGet(eng *engine.Engine, version version.Version, w htt
if err := parseForm(r); err != nil {
return err
}
if version.GreaterThan("1.0") {
useJSON := version.GreaterThan("1.0")
if useJSON {
w.Header().Set("Content-Type", "application/x-tar")
}
var job *engine.Job
if name, ok := vars["name"]; ok {
job = eng.Job("image_export", name)
} else {
job = eng.Job("image_export", r.Form["names"]...)
output := utils.NewWriteFlusher(w)
imageExportConfig := &graph.ImageExportConfig{
Engine: eng,
Outstream: output,
}
job.Stdout.Add(w)
return job.Run()
if name, ok := vars["name"]; ok {
imageExportConfig.Names = []string{name}
} else {
imageExportConfig.Names = r.Form["names"]
}
if err := s.daemon.Repositories().ImageExport(imageExportConfig); err != nil {
if !output.Flushed() {
return err
}
sf := streamformatter.NewStreamFormatter(useJSON)
output.Write(sf.FormatError(err))
}
return nil
}
func (s *Server) postImagesLoad(eng *engine.Engine, version version.Version, w http.ResponseWriter, r *http.Request, vars map[string]string) error {