OPC # 0001: Extract OPC into standalone repo
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
using ControlPlane.Core.Models;
|
||||
|
||||
namespace ControlPlane.Core.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Mutable context bag passed through every saga step.
|
||||
/// Steps read inputs and write outputs here so downstream steps can consume them.
|
||||
/// </summary>
|
||||
public class SagaContext
|
||||
{
|
||||
public ProvisioningJob Job { get; init; } = default!;
|
||||
|
||||
// Written by DatabaseStep — connection string for the tenant's Postgres (shared or own)
|
||||
public string? TenantConnectionString { get; set; }
|
||||
public string? TenantStackName { get; set; }
|
||||
|
||||
// Written by KeycloakStep
|
||||
public string? DayZeroUserSubjectId { get; set; }
|
||||
public string? MagicLink { get; set; }
|
||||
|
||||
// Written by LaunchStep or PulumiStep — base URL for the provisioned tenant
|
||||
public string? TenantApiBaseUrl { get; set; }
|
||||
|
||||
// Written by LaunchStep — primary app container name
|
||||
public string? ContainerName { get; set; }
|
||||
|
||||
// Written by PulumiStep (DedicatedVM/Enterprise tier) — target host details for subsequent steps
|
||||
public string? VmIpAddress { get; set; }
|
||||
public string? VmSshKeyPath { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user