rename file.go to status.go, and move related code there

This commit is contained in:
Andrey Nering
2017-07-16 16:15:29 -03:00
parent 72250b32d3
commit dc6cb68327
2 changed files with 43 additions and 41 deletions

41
task.go
View File

@@ -178,47 +178,6 @@ func (e *Executor) runDeps(ctx context.Context, t *Task) error {
return g.Wait()
}
func (e *Executor) isTaskUpToDate(ctx context.Context, t *Task) (bool, error) {
if len(t.Status) > 0 {
return e.isUpToDateStatus(ctx, t)
}
return e.isUpToDateTimestamp(ctx, t)
}
func (e *Executor) isUpToDateStatus(ctx context.Context, t *Task) (bool, error) {
for _, s := range t.Status {
err := execext.RunCommand(&execext.RunCommandOptions{
Context: ctx,
Command: s,
Dir: e.getTaskDir(t),
Env: e.getEnviron(t),
})
if err != nil {
return false, nil
}
}
return true, nil
}
func (e *Executor) isUpToDateTimestamp(ctx context.Context, t *Task) (bool, error) {
if len(t.Sources) == 0 || len(t.Generates) == 0 {
return false, nil
}
dir := e.getTaskDir(t)
sourcesMaxTime, err := getPatternsMaxTime(dir, t.Sources)
if err != nil || sourcesMaxTime.IsZero() {
return false, nil
}
generatesMinTime, err := getPatternsMinTime(dir, t.Generates)
if err != nil || generatesMinTime.IsZero() {
return false, nil
}
return !generatesMinTime.Before(sourcesMaxTime), nil
}
func (e *Executor) runCommand(ctx context.Context, t *Task, call Call, i int) error {
cmd := t.Cmds[i]