public static bool IndicatesFailure(this PipResultStatus result) { // Note: Skipped pips are not considered failures because they do not by themselves cause a build to fail. // If a pip is skipped due to an upstream failure, that upstream pip is the one that causes the session to fail. return(result == PipResultStatus.Failed || result == PipResultStatus.Canceled); }
public static bool IndicatesFailure(this PipResultStatus result) { return(result == PipResultStatus.Failed || result == PipResultStatus.Skipped || result == PipResultStatus.Canceled); }
/// <summary> /// Creates perf info given a specific pip status (it is mapped to a <see cref="PipExecutionLevel"/>), /// and with start-stop markers at the current instant (zero duration). /// </summary> public static PipExecutionPerformance CreatePoint(PipResultStatus status) { DateTime point = DateTime.UtcNow; return(new PipExecutionPerformance(status.ToExecutionLevel(), point, point, workerId: 0)); }
/// <summary> /// Creates perf info given a specific pip status (it is mapped to a <see cref="PipExecutionLevel"/>) and a start time /// (the end time is inferred as the current time). /// </summary> public static PipExecutionPerformance Create(PipResultStatus status, DateTime executionStart) { Contract.Requires(executionStart.Kind == DateTimeKind.Utc); return(new PipExecutionPerformance(status.ToExecutionLevel(), executionStart, DateTime.UtcNow, workerId: 0)); }
/// <summary> /// Creates a pip result for the given status /// </summary> public PipResult CreatePipResult(PipResultStatus status) { return(PipResult.Create(status, StartTime)); }
/// <summary> /// Sets the pip result and return <see cref="PipExecutionStep.HandleResult"/> step to handle the result /// </summary> public PipExecutionStep SetPipResult(PipResultStatus status) { return(SetPipResult(CreatePipResult(status))); }