// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Oos.Outputs
{

    [OutputType]
    public sealed class GetExecutionsExecutionResult
    {
        /// <summary>
        /// The category of template. Valid: `AlarmTrigger`, `EventTrigger`, `Other` and `TimerTrigger`.
        /// </summary>
        public readonly string Category;
        /// <summary>
        /// The counters of OOS Execution.
        /// </summary>
        public readonly string Counters;
        /// <summary>
        /// The time when the execution was created.
        /// </summary>
        public readonly string CreateDate;
        /// <summary>
        /// The time when the execution was ended.
        /// </summary>
        public readonly string EndDate;
        /// <summary>
        /// The user who execute the template.
        /// </summary>
        public readonly string ExecutedBy;
        /// <summary>
        /// ID of the OOS Executions.
        /// </summary>
        public readonly string ExecutionId;
        /// <summary>
        /// ID of the OOS Executions.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// Whether to include subtasks.
        /// </summary>
        public readonly bool IsParent;
        /// <summary>
        /// The mode of OOS Execution. Valid: `Automatic`, `Debug`.
        /// </summary>
        public readonly string Mode;
        /// <summary>
        /// The outputs of OOS Executions.
        /// </summary>
        public readonly string Outputs;
        /// <summary>
        /// The parameters required by the template
        /// </summary>
        public readonly string Parameters;
        /// <summary>
        /// The id of parent OOS Execution.
        /// </summary>
        public readonly string ParentExecutionId;
        /// <summary>
        /// The role that executes the current template.
        /// </summary>
        public readonly string RamRole;
        /// <summary>
        /// The time when the template was started.
        /// </summary>
        public readonly string StartDate;
        /// <summary>
        /// The Status of OOS Execution. Valid: `Cancelled`, `Failed`, `Queued`, `Running`, `Started`, `Success`, `Waiting`.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// The message of status.
        /// </summary>
        public readonly string StatusMessage;
        /// <summary>
        /// The reason of status.
        /// </summary>
        public readonly string StatusReason;
        /// <summary>
        /// The id of execution template.
        /// </summary>
        public readonly string TemplateId;
        /// <summary>
        /// The name of execution template.
        /// </summary>
        public readonly string TemplateName;
        /// <summary>
        /// The version of execution template.
        /// </summary>
        public readonly string TemplateVersion;
        /// <summary>
        /// The time when the template was updated.
        /// </summary>
        public readonly string UpdateDate;

        [OutputConstructor]
        private GetExecutionsExecutionResult(
            string category,

            string counters,

            string createDate,

            string endDate,

            string executedBy,

            string executionId,

            string id,

            bool isParent,

            string mode,

            string outputs,

            string parameters,

            string parentExecutionId,

            string ramRole,

            string startDate,

            string status,

            string statusMessage,

            string statusReason,

            string templateId,

            string templateName,

            string templateVersion,

            string updateDate)
        {
            Category = category;
            Counters = counters;
            CreateDate = createDate;
            EndDate = endDate;
            ExecutedBy = executedBy;
            ExecutionId = executionId;
            Id = id;
            IsParent = isParent;
            Mode = mode;
            Outputs = outputs;
            Parameters = parameters;
            ParentExecutionId = parentExecutionId;
            RamRole = ramRole;
            StartDate = startDate;
            Status = status;
            StatusMessage = statusMessage;
            StatusReason = statusReason;
            TemplateId = templateId;
            TemplateName = templateName;
            TemplateVersion = templateVersion;
            UpdateDate = updateDate;
        }
    }
}
