1
0
mirror of https://github.com/newnius/YAO-scheduler.git synced 2025-12-13 07:46:43 +00:00
This commit is contained in:
2020-05-02 22:51:13 +08:00
parent a24d93c034
commit 7b7529bf94

View File

@@ -94,40 +94,41 @@ func (jm *JobManager) start() {
GPUs = append(GPUs, GPU.UUID) GPUs = append(GPUs, GPU.UUID)
} }
v := url.Values{} for attemp := 0; attemp < 3; attemp++ {
v.Set("image", jm.job.Tasks[i].Image) v := url.Values{}
v.Set("cmd", jm.job.Tasks[i].Cmd) v.Set("image", jm.job.Tasks[i].Image)
v.Set("name", jm.job.Tasks[i].Name) v.Set("cmd", jm.job.Tasks[i].Cmd)
v.Set("workspace", jm.job.Workspace) v.Set("name", jm.job.Tasks[i].Name)
v.Set("gpus", strings.Join(GPUs, ",")) v.Set("workspace", jm.job.Workspace)
v.Set("mem_limit", strconv.Itoa(jm.job.Tasks[i].Memory)+"m") v.Set("gpus", strings.Join(GPUs, ","))
v.Set("cpu_limit", strconv.Itoa(jm.job.Tasks[i].NumberCPU)) v.Set("mem_limit", strconv.Itoa(jm.job.Tasks[i].Memory)+"m")
v.Set("network", network) v.Set("cpu_limit", strconv.Itoa(jm.job.Tasks[i].NumberCPU))
v.Set("should_wait", "1") v.Set("network", network)
v.Set("should_wait", "1")
resp, err := doRequest("POST", "http://"+jm.resources[i].ClientHost+":8000/create", strings.NewReader(v.Encode()), "application/x-www-form-urlencoded", "") resp, err := doRequest("POST", "http://"+jm.resources[i].ClientHost+":8000/create", strings.NewReader(v.Encode()), "application/x-www-form-urlencoded", "")
if err != nil { if err != nil {
log.Warn(err.Error()) log.Warn(err.Error())
continue continue
} }
body, err := ioutil.ReadAll(resp.Body) body, err := ioutil.ReadAll(resp.Body)
resp.Body.Close() resp.Body.Close()
if err != nil { if err != nil {
log.Warn(err) log.Warn(err)
continue continue
} }
var res MsgCreate var res MsgCreate
err = json.Unmarshal([]byte(string(body)), &res) err = json.Unmarshal([]byte(string(body)), &res)
if err != nil { if err != nil {
log.Warn(err) log.Warn(err)
continue continue
}
if res.Code != 0 {
log.Warn(res)
}
} }
if res.Code != 0 {
log.Warn(res)
}
jm.jobStatus.tasks[jm.job.Tasks[i].Name] = TaskStatus{Id: res.Id, Node: jm.resources[i].ClientHost} jm.jobStatus.tasks[jm.job.Tasks[i].Name] = TaskStatus{Id: res.Id, Node: jm.resources[i].ClientHost}
} }