Initial commit: ESB Certificate Manager.

EOF

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-24 08:10:13 +02:00
co-authored by Cursor
commit ed8e2822d1
36 changed files with 5111 additions and 0 deletions
@@ -0,0 +1,40 @@
namespace ZA.CoreService.ESBCertificateManager.Models;
public sealed class DeploymentRunResult
{
public Guid RunId { get; init; } = Guid.NewGuid();
public required IReadOnlyList<TargetStepResult> TargetResults { get; init; }
public bool OverallSuccess => TargetResults.All(r => r.Success);
public DateTimeOffset StartedAt { get; init; }
public DateTimeOffset FinishedAt { get; init; }
public string CertificateFilePath { get; init; } = string.Empty;
public string CertificateFingerprint { get; init; } = string.Empty;
}
public sealed class TargetStepResult
{
public required int TargetId { get; init; }
public required string TargetName { get; init; }
public bool Success { get; init; }
public required string StatusText { get; init; }
public string? Detail { get; init; }
public IReadOnlyList<string> Steps { get; init; } = [];
public DateTimeOffset StartedAt { get; init; }
public DateTimeOffset FinishedAt { get; init; }
public bool CopySucceeded { get; init; }
public bool RestartSucceeded { get; init; }
public bool TlsSucceeded { get; init; }
public string? ObservedFingerprint { get; init; }
}
public sealed class ValidationIssue
{
public required string Message { get; init; }
public int? TargetId { get; init; }
}
public sealed class PreflightValidationResult
{
public bool IsValid => Issues.Count == 0;
public List<ValidationIssue> Issues { get; } = [];
}