MCPcopy
hub / github.com/apache/devlake / runSubtask

Function runSubtask

backend/core/runner/run_task.go:402–426  ·  view source on GitHub ↗
(
	basicRes context.BasicRes,
	ctx plugin.SubTaskContext,
	parentID uint64,
	subtaskNumber int,
	entryPoint plugin.SubTaskEntryPoint,
)

Source from the content-addressed store, hash-verified

400}
401
402func runSubtask(
403 basicRes context.BasicRes,
404 ctx plugin.SubTaskContext,
405 parentID uint64,
406 subtaskNumber int,
407 entryPoint plugin.SubTaskEntryPoint,
408) errors.Error {
409 beginAt := time.Now()
410 subtask := &models.Subtask{
411 Name: ctx.GetName(),
412 TaskID: parentID,
413 Number: subtaskNumber,
414 BeganAt: &beginAt,
415 }
416 recordSubtask(basicRes, subtask)
417 // defer to record subtask status
418 defer func() {
419 finishedAt := time.Now()
420 subtask.FinishedAt = &finishedAt
421 subtask.SpentSeconds = finishedAt.Unix() - beginAt.Unix()
422
423 recordSubtask(basicRes, subtask)
424 }()
425 return entryPoint(ctx)
426}
427
428func recordSubtask(basicRes context.BasicRes, subtask *models.Subtask) {
429 where := dal.Where("task_id = ? and name = ?", subtask.TaskID, subtask.Name)

Callers 1

RunPluginSubTasksFunction · 0.85

Calls 2

recordSubtaskFunction · 0.85
GetNameMethod · 0.65

Tested by

no test coverage detected