diff --git a/api/server/server.go b/api/server/server.go index ffbef8cee9..66a0fa8126 100644 --- a/api/server/server.go +++ b/api/server/server.go @@ -1151,9 +1151,14 @@ func getExecByID(eng *engine.Engine, version version.Version, w http.ResponseWri if vars == nil { return fmt.Errorf("Missing parameter 'id'") } - var job = eng.Job("execInspect", vars["id"]) - streamJSON(job, w, false) - return job.Run() + + d := getDaemon(eng) + eConfig, err := d.ContainerExecInspect(vars["id"]) + if err != nil { + return err + } + + return writeJSON(w, http.StatusOK, eConfig) } func getImagesByName(eng *engine.Engine, version version.Version, w http.ResponseWriter, r *http.Request, vars map[string]string) error { diff --git a/daemon/daemon.go b/daemon/daemon.go index 86ed71e231..b7474fdbfd 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -129,7 +129,6 @@ func (daemon *Daemon) Install(eng *engine.Engine) error { "stop": daemon.ContainerStop, "execCreate": daemon.ContainerExecCreate, "execStart": daemon.ContainerExecStart, - "execInspect": daemon.ContainerExecInspect, } { if err := eng.Register(name, method); err != nil { return err diff --git a/daemon/inspect.go b/daemon/inspect.go index 73ce2ea8e2..7e25626ef7 100644 --- a/daemon/inspect.go +++ b/daemon/inspect.go @@ -80,20 +80,11 @@ func (daemon *Daemon) ContainerInspect(job *engine.Job) error { return nil } -func (daemon *Daemon) ContainerExecInspect(job *engine.Job) error { - if len(job.Args) != 1 { - return fmt.Errorf("usage: %s ID", job.Name) - } - id := job.Args[0] +func (daemon *Daemon) ContainerExecInspect(id string) (*execConfig, error) { eConfig, err := daemon.getExecConfig(id) if err != nil { - return err + return nil, err } - b, err := json.Marshal(*eConfig) - if err != nil { - return err - } - job.Stdout.Write(b) - return nil + return eConfig, nil }