feat(commons): add deploy/admin/audit/redundancy/fleet message contracts
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
using ZB.MOM.WW.OtOpcUa.Commons.Types;
|
||||
|
||||
namespace ZB.MOM.WW.OtOpcUa.Commons.Messages.Deploy;
|
||||
|
||||
public enum ApplyAckOutcome { Applied, Failed }
|
||||
|
||||
/// <summary>
|
||||
/// Per-node acknowledgment returned by <c>DriverHostActor</c> to the dispatching coordinator.
|
||||
/// </summary>
|
||||
public sealed record ApplyAck(
|
||||
DeploymentId DeploymentId,
|
||||
NodeId NodeId,
|
||||
ApplyAckOutcome Outcome,
|
||||
string? FailureReason,
|
||||
CorrelationId CorrelationId);
|
||||
@@ -0,0 +1,14 @@
|
||||
using ZB.MOM.WW.OtOpcUa.Commons.Types;
|
||||
|
||||
namespace ZB.MOM.WW.OtOpcUa.Commons.Messages.Deploy;
|
||||
|
||||
/// <summary>
|
||||
/// Coordinator-published event indicating that the deployment failed and was rolled back.
|
||||
/// Includes the set of nodes that NACKed or timed out so the admin UI can surface which
|
||||
/// node(s) are sticky on the prior good revision.
|
||||
/// </summary>
|
||||
public sealed record DeploymentFailed(
|
||||
DeploymentId DeploymentId,
|
||||
string FailureReason,
|
||||
IReadOnlyList<NodeId> FailedNodes,
|
||||
CorrelationId CorrelationId);
|
||||
@@ -0,0 +1,13 @@
|
||||
using ZB.MOM.WW.OtOpcUa.Commons.Types;
|
||||
|
||||
namespace ZB.MOM.WW.OtOpcUa.Commons.Messages.Deploy;
|
||||
|
||||
/// <summary>
|
||||
/// Coordinator-published event indicating that every active driver node successfully applied
|
||||
/// the deployment and the row in <c>Deployment</c> has been transitioned to <c>Sealed</c>.
|
||||
/// </summary>
|
||||
public sealed record DeploymentSealed(
|
||||
DeploymentId DeploymentId,
|
||||
RevisionHash RevisionHash,
|
||||
DateTime SealedAtUtc,
|
||||
CorrelationId CorrelationId);
|
||||
@@ -0,0 +1,13 @@
|
||||
using ZB.MOM.WW.OtOpcUa.Commons.Types;
|
||||
|
||||
namespace ZB.MOM.WW.OtOpcUa.Commons.Messages.Deploy;
|
||||
|
||||
/// <summary>
|
||||
/// Sent from the admin-role <c>ConfigPublishCoordinator</c> singleton to each driver node's
|
||||
/// <c>DriverHostActor</c>. Tells the node to fetch the deployment artifact identified by
|
||||
/// <paramref name="DeploymentId"/> + <paramref name="RevisionHash"/> and apply it.
|
||||
/// </summary>
|
||||
public sealed record DispatchDeployment(
|
||||
DeploymentId DeploymentId,
|
||||
RevisionHash RevisionHash,
|
||||
CorrelationId CorrelationId);
|
||||
Reference in New Issue
Block a user