Files
Microsoft.SelfService.Porta…/Models/DeploymentJobStepModel.cs
Torsten Brendgen 01c2a5df2e Add queue hardening by modifying DeploymentJobTargets, DeploymentJobSteps, and DeploymentJobs tables
- Drop existing indexes on DeploymentJobTargets and DeploymentJobSteps
- Alter Status column to nvarchar(450) in DeploymentJobTargets, DeploymentJobSteps, and DeploymentJobs
- Add new columns: Finished, OutputMetadataJson, Started to DeploymentJobTargets; ErrorMessage, Finished, OutputMetadataJson, Started to DeploymentJobSteps; CorrelationId, HeartbeatAt, Priority, RowVersion, ScheduledAt, WorkerName to DeploymentJobs
- Create new indexes for improved query performance
- Add constraints to ensure OutputMetadataJson is valid JSON
- Record migration in __EFMigrationsHistory
2026-07-09 08:50:09 +02:00

54 lines
1.4 KiB
C#

using System.ComponentModel.DataAnnotations.Schema;
namespace Microsoft.SelfService.Portal.Core.API.Models
{
public class QueueJobStepModel : BaseModel
{
[Column(Order = 1)]
public Guid QueueJobId { get; set; }
[Column(Order = 2)]
public Guid? DependsOnQueueJobStepId { get; set; }
[Column(Order = 3)]
public int SortOrder { get; set; }
[Column(Order = 4)]
public string Name { get; set; }
[Column(Order = 5)]
public string StepType { get; set; } = QueueJobStepType.Provision;
[Column(Order = 6)]
public string Status { get; set; } = QueueJobStatus.Pending;
[Column(Order = 7)]
public string? MetadataJson { get; set; }
[Column(Order = 8)]
public DateTime? ApprovedAt { get; set; }
[Column(Order = 9)]
public string? ApprovedBy { get; set; }
[Column(Order = 10)]
public string? ApprovalComment { get; set; }
[Column(Order = 11)]
public DateTime? Started { get; set; }
[Column(Order = 12)]
public DateTime? Finished { get; set; }
[Column(Order = 13)]
public string? OutputMetadataJson { get; set; }
[Column(Order = 14)]
public string? ErrorMessage { get; set; }
public QueueJobModel QueueJob { get; set; }
public QueueJobStepModel? DependsOnQueueJobStep { get; set; }
}
}