Commit a359ba72 authored by 陈子龙's avatar 陈子龙

自动化运维 立即执行 fix

parent 545ab8a7
...@@ -223,6 +223,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -223,6 +223,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
//} //}
//req.Script = string(y) //req.Script = string(y)
//写入执行脚本 //写入执行脚本
fmt.Println("1111111111111111111111")
f2, err := os.Create("/etc/ansible/ansible.yml") f2, err := os.Create("/etc/ansible/ansible.yml")
if err != nil { if err != nil {
return resp.FileExecError.WithError(err) return resp.FileExecError.WithError(err)
...@@ -232,6 +233,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -232,6 +233,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
if err != nil { if err != nil {
return resp.FileExecError.WithError(err) return resp.FileExecError.WithError(err)
} }
fmt.Println("2222222222222")
//写入额外yml参数 //写入额外yml参数
if req.Type == 1 { if req.Type == 1 {
//写入执行脚本 //写入执行脚本
...@@ -252,7 +254,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -252,7 +254,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
} else { } else {
cmd = exec.Command("ansible-playbook", "/etc/ansible/ansible.yml") cmd = exec.Command("ansible-playbook", "/etc/ansible/ansible.yml")
} }
fmt.Println("333333333333333")
//捕获正常日志 //捕获正常日志
stdout, err := cmd.StdoutPipe() stdout, err := cmd.StdoutPipe()
if err != nil { if err != nil {
...@@ -267,15 +269,17 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -267,15 +269,17 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
if err = cmd.Start(); err != nil { if err = cmd.Start(); err != nil {
return resp.CmdExecError.WithError(err) return resp.CmdExecError.WithError(err)
} }
fmt.Println("4444444444444444444")
//获取正常/异常 输出流 //获取正常/异常 输出流
outputBuf := bufio.NewReader(stdout) outputBuf := bufio.NewReader(stdout)
readerr := bufio.NewReader(stderr) readerr := bufio.NewReader(stderr)
var out, outErr int var out, outErr int
for { for {
fmt.Println("666666666666666")
//逐行打印日志 //逐行打印日志
lineOut, err1 := outputBuf.ReadString('\n') lineOut, err1 := outputBuf.ReadString('\n')
if err1 != nil || io.EOF == err1 { if (err1 != nil || io.EOF == err1) && out == 0 {
fmt.Println("捕获标准输出line:", lineOut) fmt.Println("捕获标准输出line:", lineOut)
fmt.Println("捕获标准输出err:", err1) fmt.Println("捕获标准输出err:", err1)
out = 1 out = 1
...@@ -285,7 +289,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -285,7 +289,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
} }
lineErr, err2 := readerr.ReadString('\n') lineErr, err2 := readerr.ReadString('\n')
if err2 != nil || io.EOF == err2 { if (err2 != nil || io.EOF == err2) && outErr == 0 {
fmt.Println("捕获标准错误line:", lineErr) fmt.Println("捕获标准错误line:", lineErr)
fmt.Println("捕获标准错误err:", err) fmt.Println("捕获标准错误err:", err)
outErr = 1 outErr = 1
...@@ -297,7 +301,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) { ...@@ -297,7 +301,7 @@ func (t *TaskManageSvc) ExecScript(req request.ExecScriptReq) (err error) {
break break
} }
} }
fmt.Println("55555555555555")
cmd.Wait() cmd.Wait()
fmt.Println("执行结束") fmt.Println("执行结束")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment