mirror of
https://github.com/actions/runner.git
synced 2026-01-01 23:23:58 +08:00
73 lines
1.5 KiB
C#
73 lines
1.5 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
using System.Runtime.Serialization;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace GitHub.DistributedTask.Pipelines
|
|
{
|
|
[DataContract]
|
|
[KnownType(typeof(ActionStep))]
|
|
[JsonConverter(typeof(StepConverter))]
|
|
[EditorBrowsable(EditorBrowsableState.Never)]
|
|
public abstract class Step
|
|
{
|
|
protected Step()
|
|
{
|
|
this.Enabled = true;
|
|
}
|
|
|
|
protected Step(Step stepToClone)
|
|
{
|
|
this.Enabled = stepToClone.Enabled;
|
|
this.Id = stepToClone.Id;
|
|
this.Name = stepToClone.Name;
|
|
this.DisplayName = stepToClone.DisplayName;
|
|
}
|
|
|
|
[DataMember(EmitDefaultValue = false)]
|
|
public abstract StepType Type
|
|
{
|
|
get;
|
|
}
|
|
|
|
[DataMember(EmitDefaultValue = false)]
|
|
public Guid Id
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[DataMember(EmitDefaultValue = false)]
|
|
public String Name
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[DataMember(EmitDefaultValue = false)]
|
|
public String DisplayName
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
[DefaultValue(true)]
|
|
[DataMember(EmitDefaultValue = false)]
|
|
public Boolean Enabled
|
|
{
|
|
get;
|
|
set;
|
|
}
|
|
|
|
public abstract Step Clone();
|
|
}
|
|
|
|
[DataContract]
|
|
[EditorBrowsable(EditorBrowsableState.Never)]
|
|
public enum StepType
|
|
{
|
|
[DataMember]
|
|
Action = 4,
|
|
}
|
|
}
|