[feat] remove cgo and add cmd stderr output #2

Merged
root merged 1 commits from release/1.0.1 into master 2021-06-14 14:59:49 +00:00
2 changed files with 23 additions and 8 deletions

View File

@ -3,7 +3,7 @@
BIN_NAME := deploy
build:
go build -buildmode=pie -ldflags '-w -s' -o $(BIN_NAME) ./cmd/svc/main.go
CGO_ENABLED=0 go build -buildmode=pie -ldflags '-w -s' -o $(BIN_NAME) ./cmd/svc/main.go
clean:
rm $(BIN_NAME)

View File

@ -52,18 +52,33 @@ func (s *HTTPServer) setHandler(check map[string]string, script string) gin.Hand
if err != nil {
nlog.Warnf("setup pipe out fail: %+v\n", err)
}
errReader, err := cmd.StderrPipe()
if err != nil {
nlog.Warnf("setup pipe out fail: %+v\n", err)
}
if err := cmd.Start(); err != nil {
nlog.Warnf("start script fail: %+v\n", err)
}
in := bufio.NewScanner(reader)
for in.Scan() {
nlog.Debugf(in.Text())
}
if err := in.Err(); err != nil {
nlog.Warnf("script error: %+v\n", err)
}
go func() {
in := bufio.NewScanner(reader)
for in.Scan() {
nlog.Debugf(in.Text())
}
if err := in.Err(); err != nil {
nlog.Warnf("script error: %+v\n", err)
}
}()
go func() {
in := bufio.NewScanner(errReader)
for in.Scan() {
nlog.Debugf(in.Text())
}
if err := in.Err(); err != nil {
nlog.Warnf("script error: %+v\n", err)
}
}()
}()