The Test Run sandbox and Monaco analysis modelled a script API that had drifted from the site runtime's ScriptGlobals, so real scripts failed to compile in Test Run. Realign both to the runtime surface (Instance/Scripts/ExternalSystem/Attributes/Children/Parent) and drop the duplicate ScriptHost stub so the two cannot diverge again. - Script calls (Scripts.CallShared, Instance.CallScript, Route.To().Call) accept an anonymous object instead of a hand-built dictionary, via a shared ScriptArgs normalizer; existing dictionary calls still compile. - Test Run can optionally bind to a deployed instance, so Instance/ Attributes/CallScript route to it cross-site; adds site-side RouteToGetAttributes/RouteToSetAttributes handlers. - Adds Test Run panels to the API method and template script editors. - Fixes the TestDatabaseQuery seed script, which queried a table that never existed. Also commits unrelated in-progress work already in the tree: the health monitoring report loop, site streaming changes, and the Admin/Design data-connection and SMTP page reorganization.
20 lines
636 B
C#
20 lines
636 B
C#
using ScadaLink.Commons.Messages.Health;
|
|
|
|
namespace ScadaLink.HealthMonitoring;
|
|
|
|
/// <summary>
|
|
/// Provides cluster node status information for health reporting.
|
|
/// Implemented by the Host project which has access to the Akka.NET actor system.
|
|
/// </summary>
|
|
public interface IClusterNodeProvider
|
|
{
|
|
IReadOnlyList<NodeStatus> GetClusterNodes();
|
|
|
|
/// <summary>
|
|
/// True when this node is currently the cluster leader (Primary) for the
|
|
/// provider's role scope. Used by the central report loop to decide which
|
|
/// node should generate the "central" health report.
|
|
/// </summary>
|
|
bool SelfIsPrimary { get; }
|
|
}
|