From 91dd310d2be20701adbe6beef5b88cdd41846a98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=AD=90=E9=BE=99?= Date: Fri, 7 Jul 2023 10:59:51 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=8C=96=E8=BF=90=E7=BB=B4?= =?UTF-8?q?=20=E7=AB=8B=E5=8D=B3=E6=89=A7=E8=A1=8C=20fix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/service/task_manage.go | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/service/task_manage.go b/src/service/task_manage.go index a89f5da..5490c7a 100644 --- a/src/service/task_manage.go +++ b/src/service/task_manage.go @@ -185,19 +185,19 @@ func (t *TaskManageSvc) ListTaskManage(req request.ListTaskManageReq) (total int return } -func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data map[string]interface{}, err error) { +func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { if req.ScriptUrl != "" { minioClient, err := client.GetMinioConnect() if err != nil { - return nil, resp.DbConnectError.WithError(err) + return resp.DbConnectError.WithError(err) } object, err := minioClient.GetObject(context.Background(), conf.Options.MinioBucket, req.ScriptUrl, minio.GetObjectOptions{}) if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } obj, err := io.ReadAll(object) if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } req.Script = string(obj) } @@ -225,24 +225,24 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data map[string]i //写入执行脚本 f2, err := os.Create("/etc/ansible/ansible.yml") if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } defer f2.Close() _, err = f2.Write([]byte(req.Script)) if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } //写入额外yml参数 if req.Type == 1 { //写入执行脚本 f3, err := os.Create("/etc/ansible/ansible_extra.yml") if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } defer f3.Close() _, err = f3.Write([]byte(req.Value)) if err != nil { - return nil, resp.FileExecError.WithError(err) + return resp.FileExecError.WithError(err) } req.Value = fmt.Sprintf("@/etc/ansible/ansible_extra.yml") } @@ -268,8 +268,16 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data map[string]i //执行命令 err = cmd.Run() if err != nil { + cmd.Stderr = os.Stderr + fmt.Println(cmd.Stderr) + err = resp.FileExecError.WithError(err) return } + fmt.Println("执行成功") + fmt.Println("stdout:", stdout) + + //cmd.Stdout = os.Stdout + //cmd.Stderr = os.Stderr //stdout, err := cmd.StdoutPipe() //if err != nil { // fmt.Println("执行出错:", err) @@ -280,8 +288,6 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data map[string]i // log.Fatal(err) //} - fmt.Println("执行成功") - fmt.Println("stdout:", stdout) //outputBuf := bufio.NewReader(stdout) //output, isPrefix, err := outputBuf.ReadLine() //output, err := cmd.Output() @@ -293,7 +299,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (data map[string]i //data["step"] = isPrefix //data["output"] = string(output) //data["output"] = string(output) - return data, nil + return nil } func GetOutput(reader *bufio.Reader) { -- 2.26.0