mirror of
https://github.com/actions/runner.git
synced 2025-12-10 12:36:23 +00:00
32 lines
1.3 KiB
C#
32 lines
1.3 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using GitHub.DistributedTask.Expressions2;
|
|
using GitHub.DistributedTask.Expressions2.Sdk;
|
|
using GitHub.DistributedTask.ObjectTemplating;
|
|
using GitHub.DistributedTask.WebApi;
|
|
using GitHub.Runner.Common;
|
|
using GitHub.Runner.Common.Util;
|
|
using GitHub.Runner.Sdk;
|
|
using ObjectTemplating = GitHub.DistributedTask.ObjectTemplating;
|
|
using PipelineTemplateConstants = GitHub.DistributedTask.Pipelines.ObjectTemplating.PipelineTemplateConstants;
|
|
|
|
namespace GitHub.Runner.Worker.Expressions
|
|
{
|
|
public sealed class FailureFunction : Function
|
|
{
|
|
protected sealed override object EvaluateCore(EvaluationContext evaluationContext, out ResultMemory resultMemory)
|
|
{
|
|
resultMemory = null;
|
|
var templateContext = evaluationContext.State as TemplateContext;
|
|
ArgUtil.NotNull(templateContext, nameof(templateContext));
|
|
var executionContext = templateContext.State[nameof(IExecutionContext)] as IExecutionContext;
|
|
ArgUtil.NotNull(executionContext, nameof(executionContext));
|
|
ActionResult jobStatus = executionContext.JobContext.Status ?? ActionResult.Success;
|
|
return jobStatus == ActionResult.Failure;
|
|
}
|
|
}
|
|
}
|