64e3fbe035
v2-ci / build (push) Failing after 1m43s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped
Adds <summary>, <param>, <typeparam>, and <inheritdoc/> tags to public members surfaced by commentchecker — resolves 5,847 of 5,869 issues (99.6%) across three /fixdocs passes.
40 lines
1.7 KiB
C#
40 lines
1.7 KiB
C#
using ZB.MOM.WW.OtOpcUa.Configuration.Enums;
|
|
|
|
namespace ZB.MOM.WW.OtOpcUa.Configuration.Entities;
|
|
|
|
/// <summary>
|
|
/// Immutable snapshot of a config artifact dispatched to every driver-role node by the
|
|
/// ConfigPublishCoordinator. Replaces the v1 <c>ConfigGeneration</c> draft/publish
|
|
/// row; the ArtifactBlob carries the SnapshotAndFlatten() output produced by
|
|
/// AdminOperationsActor.
|
|
/// </summary>
|
|
public sealed class Deployment
|
|
{
|
|
/// <summary>Gets or sets the unique deployment identifier.</summary>
|
|
public Guid DeploymentId { get; init; } = Guid.NewGuid();
|
|
|
|
/// <summary>Gets or sets the revision hash of the deployment artifact.</summary>
|
|
public required string RevisionHash { get; init; }
|
|
|
|
/// <summary>Gets or sets the deployment status.</summary>
|
|
public DeploymentStatus Status { get; set; } = DeploymentStatus.Dispatching;
|
|
|
|
/// <summary>Gets or sets the name of the user who created the deployment.</summary>
|
|
public required string CreatedBy { get; init; }
|
|
|
|
/// <summary>Gets or sets the UTC timestamp when the deployment was created.</summary>
|
|
public DateTime CreatedAtUtc { get; init; } = DateTime.UtcNow;
|
|
|
|
/// <summary>Gets or sets the serialized artifact blob containing the configuration.</summary>
|
|
public byte[] ArtifactBlob { get; init; } = Array.Empty<byte>();
|
|
|
|
/// <summary>Gets or sets the row version for optimistic concurrency control.</summary>
|
|
public byte[] RowVersion { get; set; } = Array.Empty<byte>();
|
|
|
|
/// <summary>Gets or sets the failure reason if the deployment failed.</summary>
|
|
public string? FailureReason { get; set; }
|
|
|
|
/// <summary>Gets or sets the UTC timestamp when the deployment was sealed.</summary>
|
|
public DateTime? SealedAtUtc { get; set; }
|
|
}
|