A Context is a transient execution handle in Rind that provides a component (either Orchestrators or Runtimes) with scoped access to system resources. Contexts are short-lived, existing only for the duration of a single dispatch or Boot Phases.
Orchestrator Context
The Orchestrator Context is used during the Boot sequence to allow policy components to set up the system.
-
Registry: Provides access to metadata registration and instance data.
-
Dispatcher: Enables sending initial commands to any registered Runtimes via Runtime Dispatcher.
Runtime Context
The Runtime Context is used during action handling to provide Runtimes with their specific execution environment.
-
Scope: Provides access to runtime-specific dependencies via the Scopes system.
-
Registry: Allows for querying metadata and mutating domain-specific instances.
-
Event Bus: Permits publishing or subscribing to system-wide events.
-
Lifecycle: Exposes the queue for scheduling asynchronous service transitions.