This is part of an effort to break apart the deprecated server/ package
Docker-DCO-1.1-Signed-off-by: Solomon Hykes <solomon@docker.com> (github: shykes)
Fix issues with renaming changes to container_changes
Docker-DCO-1.1-Signed-off-by: Tibor Vass <teabee89@gmail.com> (github: tiborvass)
| ... | ... |
@@ -302,7 +302,7 @@ func getContainersChanges(eng *engine.Engine, version version.Version, w http.Re |
| 302 | 302 |
if vars == nil {
|
| 303 | 303 |
return fmt.Errorf("Missing parameter")
|
| 304 | 304 |
} |
| 305 |
- var job = eng.Job("changes", vars["name"])
|
|
| 305 |
+ var job = eng.Job("container_changes", vars["name"])
|
|
| 306 | 306 |
streamJSON(job, w, false) |
| 307 | 307 |
|
| 308 | 308 |
return job.Run() |
| 309 | 309 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,32 @@ |
| 0 |
+package daemon |
|
| 1 |
+ |
|
| 2 |
+import ( |
|
| 3 |
+ "github.com/docker/docker/engine" |
|
| 4 |
+) |
|
| 5 |
+ |
|
| 6 |
+func (daemon *Daemon) ContainerChanges(job *engine.Job) engine.Status {
|
|
| 7 |
+ if n := len(job.Args); n != 1 {
|
|
| 8 |
+ return job.Errorf("Usage: %s CONTAINER", job.Name)
|
|
| 9 |
+ } |
|
| 10 |
+ name := job.Args[0] |
|
| 11 |
+ if container := daemon.Get(name); container != nil {
|
|
| 12 |
+ outs := engine.NewTable("", 0)
|
|
| 13 |
+ changes, err := container.Changes() |
|
| 14 |
+ if err != nil {
|
|
| 15 |
+ return job.Error(err) |
|
| 16 |
+ } |
|
| 17 |
+ for _, change := range changes {
|
|
| 18 |
+ out := &engine.Env{}
|
|
| 19 |
+ if err := out.Import(change); err != nil {
|
|
| 20 |
+ return job.Error(err) |
|
| 21 |
+ } |
|
| 22 |
+ outs.Add(out) |
|
| 23 |
+ } |
|
| 24 |
+ if _, err := outs.WriteListTo(job.Stdout); err != nil {
|
|
| 25 |
+ return job.Error(err) |
|
| 26 |
+ } |
|
| 27 |
+ } else {
|
|
| 28 |
+ return job.Errorf("No such container: %s", name)
|
|
| 29 |
+ } |
|
| 30 |
+ return engine.StatusOK |
|
| 31 |
+} |
| ... | ... |
@@ -155,6 +155,9 @@ func (daemon *Daemon) Install(eng *engine.Engine) error {
|
| 155 | 155 |
if err := eng.Register("container_copy", daemon.ContainerCopy); err != nil {
|
| 156 | 156 |
return err |
| 157 | 157 |
} |
| 158 |
+ if err := eng.Register("container_changes", daemon.ContainerChanges); err != nil {
|
|
| 159 |
+ return err |
|
| 160 |
+ } |
|
| 158 | 161 |
return nil |
| 159 | 162 |
} |
| 160 | 163 |
|
| ... | ... |
@@ -86,33 +86,6 @@ func (srv *Server) ContainerTop(job *engine.Job) engine.Status {
|
| 86 | 86 |
return job.Errorf("No such container: %s", name)
|
| 87 | 87 |
} |
| 88 | 88 |
|
| 89 |
-func (srv *Server) ContainerChanges(job *engine.Job) engine.Status {
|
|
| 90 |
- if n := len(job.Args); n != 1 {
|
|
| 91 |
- return job.Errorf("Usage: %s CONTAINER", job.Name)
|
|
| 92 |
- } |
|
| 93 |
- name := job.Args[0] |
|
| 94 |
- if container := srv.daemon.Get(name); container != nil {
|
|
| 95 |
- outs := engine.NewTable("", 0)
|
|
| 96 |
- changes, err := container.Changes() |
|
| 97 |
- if err != nil {
|
|
| 98 |
- return job.Error(err) |
|
| 99 |
- } |
|
| 100 |
- for _, change := range changes {
|
|
| 101 |
- out := &engine.Env{}
|
|
| 102 |
- if err := out.Import(change); err != nil {
|
|
| 103 |
- return job.Error(err) |
|
| 104 |
- } |
|
| 105 |
- outs.Add(out) |
|
| 106 |
- } |
|
| 107 |
- if _, err := outs.WriteListTo(job.Stdout); err != nil {
|
|
| 108 |
- return job.Error(err) |
|
| 109 |
- } |
|
| 110 |
- } else {
|
|
| 111 |
- return job.Errorf("No such container: %s", name)
|
|
| 112 |
- } |
|
| 113 |
- return engine.StatusOK |
|
| 114 |
-} |
|
| 115 |
- |
|
| 116 | 89 |
func (srv *Server) Containers(job *engine.Job) engine.Status {
|
| 117 | 90 |
var ( |
| 118 | 91 |
foundBefore bool |