diff --git a/src/service/task_manage.go b/src/service/task_manage.go index 765a58bc1a89210ec2b730c1d5651d899405d1c8..3bfb506d94d44ed785b1e5d5208c3c3b8a8392a6 100644 --- a/src/service/task_manage.go +++ b/src/service/task_manage.go @@ -156,7 +156,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data interface{}, return nil, resp.DbSelectError.WithError(err) } //写入主机组ip - f, err := os.Open("/etc/ansible/hosts") + f, err := os.OpenFile("/etc/ansible/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777) if err != nil { err = resp.FileExecError.WithError(err) return @@ -192,7 +192,12 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data interface{}, } req.Value = fmt.Sprintf("@/etc/ansible/ansible_extra.yml") } - cmd := exec.Command("ansible", "-i", "/etc/ansible/hosts", "/etc/ansible/ansible.yml", "--extra-vars", req.Value) + var cmd *exec.Cmd + if req.Value != "" { + cmd = exec.Command("ansible", "-i", "/etc/ansible/hosts", "/etc/ansible/ansible.yml", "--extra-vars", req.Value) + } else { + cmd = exec.Command("ansible", "-i", "/etc/ansible/hosts", "/etc/ansible/ansible.yml") + } output, err := cmd.Output() if err != nil { err = resp.CmdExecError.WithError(err)