mirror of
https://github.com/go-task/task.git
synced 2025-03-05 15:05:42 +02:00
Merged branch develop into master
This commit is contained in:
commit
3779f72155
8
task.go
8
task.go
@ -40,6 +40,7 @@ type Task struct {
|
|||||||
Deps []string
|
Deps []string
|
||||||
Sources []string
|
Sources []string
|
||||||
Generates []string
|
Generates []string
|
||||||
|
Chdir string
|
||||||
}
|
}
|
||||||
|
|
||||||
type taskNotFoundError struct {
|
type taskNotFoundError struct {
|
||||||
@ -100,7 +101,7 @@ func RunTask(name string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for _, c := range t.Cmds {
|
for _, c := range t.Cmds {
|
||||||
if err := runCommand(c); err != nil {
|
if err := runCommand(c, t.Chdir); err != nil {
|
||||||
return &taskRunError{name, err}
|
return &taskRunError{name, err}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -125,13 +126,16 @@ func isTaskUpToDate(t *Task) bool {
|
|||||||
return generatesMinTime.After(sourcesMaxTime)
|
return generatesMinTime.After(sourcesMaxTime)
|
||||||
}
|
}
|
||||||
|
|
||||||
func runCommand(c string) error {
|
func runCommand(c, path string) error {
|
||||||
var cmd *exec.Cmd
|
var cmd *exec.Cmd
|
||||||
if ShExists {
|
if ShExists {
|
||||||
cmd = exec.Command(ShPath, "-c", c)
|
cmd = exec.Command(ShPath, "-c", c)
|
||||||
} else {
|
} else {
|
||||||
cmd = exec.Command("cmd", "/C", c)
|
cmd = exec.Command("cmd", "/C", c)
|
||||||
}
|
}
|
||||||
|
if "" != path {
|
||||||
|
cmd.Dir = path
|
||||||
|
}
|
||||||
cmd.Stdout = os.Stdout
|
cmd.Stdout = os.Stdout
|
||||||
cmd.Stderr = os.Stderr
|
cmd.Stderr = os.Stderr
|
||||||
if err := cmd.Run(); err != nil {
|
if err := cmd.Run(); err != nil {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user