| ... | ... |
@@ -687,9 +687,7 @@ func postContainersStop(srv *Server, version float64, w http.ResponseWriter, r * |
| 687 | 687 |
return fmt.Errorf("Missing parameter")
|
| 688 | 688 |
} |
| 689 | 689 |
job := srv.Eng.Job("stop", vars["name"])
|
| 690 |
- if t := r.Form.Get("t"); t != "" {
|
|
| 691 |
- job.Args = append(job.Args, t) |
|
| 692 |
- } |
|
| 690 |
+ job.Setenv("t", r.Form.Get("t"))
|
|
| 693 | 691 |
if err := job.Run(); err != nil {
|
| 694 | 692 |
return err |
| 695 | 693 |
} |
| ... | ... |
@@ -128,7 +128,9 @@ func TestCreateRmVolumes(t *testing.T) {
|
| 128 | 128 |
t.Fatal(err) |
| 129 | 129 |
} |
| 130 | 130 |
|
| 131 |
- if err := eng.Job("stop", id, "1").Run(); err != nil {
|
|
| 131 |
+ job = eng.Job("stop", id)
|
|
| 132 |
+ job.SetenvInt("t", 1)
|
|
| 133 |
+ if err := job.Run(); err != nil {
|
|
| 132 | 134 |
t.Fatal(err) |
| 133 | 135 |
} |
| 134 | 136 |
|
| ... | ... |
@@ -186,7 +188,9 @@ func TestCreateStartRestartStopStartKillRm(t *testing.T) {
|
| 186 | 186 |
t.Fatal(err) |
| 187 | 187 |
} |
| 188 | 188 |
|
| 189 |
- if err := eng.Job("stop", id, "15").Run(); err != nil {
|
|
| 189 |
+ job = eng.Job("stop", id)
|
|
| 190 |
+ job.SetenvInt("t", 15)
|
|
| 191 |
+ if err := job.Run(); err != nil {
|
|
| 190 | 192 |
t.Fatal(err) |
| 191 | 193 |
} |
| 192 | 194 |
|
| ... | ... |
@@ -1718,20 +1718,13 @@ func (srv *Server) ContainerStart(job *engine.Job) engine.Status {
|
| 1718 | 1718 |
} |
| 1719 | 1719 |
|
| 1720 | 1720 |
func (srv *Server) ContainerStop(job *engine.Job) engine.Status {
|
| 1721 |
- if len(job.Args) < 1 {
|
|
| 1722 |
- job.Errorf("Not enough arguments. Usage: %s CONTAINER TIMEOUT\n", job.Name)
|
|
| 1721 |
+ if len(job.Args) != 1 {
|
|
| 1722 |
+ job.Errorf("Usage: %s CONTAINER\n", job.Name)
|
|
| 1723 | 1723 |
return engine.StatusErr |
| 1724 | 1724 |
} |
| 1725 | 1725 |
name := job.Args[0] |
| 1726 |
- var t uint64 |
|
| 1727 |
- if len(job.Args) == 2 {
|
|
| 1728 |
- var err error |
|
| 1729 |
- t, err = strconv.ParseUint(job.Args[1], 10, 32) |
|
| 1730 |
- if err != nil {
|
|
| 1731 |
- job.Errorf("Invalid delay format: %s. Please provide an integer number of seconds.\n", job.Args[1])
|
|
| 1732 |
- return engine.StatusErr |
|
| 1733 |
- } |
|
| 1734 |
- } else {
|
|
| 1726 |
+ t := job.GetenvInt("t")
|
|
| 1727 |
+ if t == -1 {
|
|
| 1735 | 1728 |
t = 10 |
| 1736 | 1729 |
} |
| 1737 | 1730 |
if container := srv.runtime.Get(name); container != nil {
|