feat: enhance task runner with task status updates and process command execution

- Added a task status update to 'processing' at the start of the Run method in runner.go, improving task tracking.
- Removed redundant task status update from the end of the Run method to streamline the execution flow.
- Updated command execution in process.go to use 'bash' instead of 'sh' for better compatibility across environments.
This commit is contained in:
Marvin Zhang
2025-01-03 16:44:38 +08:00
parent 47094b8e64
commit a585ab16f7
2 changed files with 6 additions and 6 deletions

View File

@@ -148,6 +148,11 @@ func (r *Runner) Run() (err error) {
// log task started
r.Infof("task[%s] started", r.tid.Hex())
// update task status (processing)
if err := r.updateTask(constants.TaskStatusRunning, nil); err != nil {
return err
}
// configure working directory
r.configureCwd()
@@ -184,11 +189,6 @@ func (r *Runner) Run() (err error) {
r.pid = r.cmd.Process.Pid
r.t.Pid = r.pid
// update task status (processing)
if err := r.updateTask(constants.TaskStatusRunning, nil); err != nil {
return err
}
// start health check
go r.startHealthCheck()

View File

@@ -16,7 +16,7 @@ func BuildCmd(cmdStr string) (cmd *exec.Cmd, err error) {
if runtime.GOOS == "windows" {
return exec.Command("cmd", "/C", cmdStr), nil
}
return exec.Command("sh", "-c", cmdStr), nil
return exec.Command("bash", "-c", cmdStr), nil
}
func ProcessIdExists(pid int) (exists bool) {