2025-12-01 12:48:39 +01:00
|
|
|
//! Scenario orchestration primitives shared by integration tests and runners.
|
|
|
|
|
|
2026-02-02 07:19:22 +01:00
|
|
|
use std::error::Error;
|
|
|
|
|
|
|
|
|
|
mod builder_ext;
|
|
|
|
|
mod builder_ops;
|
2025-12-01 12:48:39 +01:00
|
|
|
mod capabilities;
|
2026-02-02 07:19:22 +01:00
|
|
|
mod common_builder_ext;
|
2026-02-05 08:23:14 +02:00
|
|
|
mod control;
|
2025-12-01 12:48:39 +01:00
|
|
|
mod definition;
|
2026-02-02 07:19:22 +01:00
|
|
|
mod deployment_policy;
|
2025-12-01 12:48:39 +01:00
|
|
|
mod expectation;
|
2025-12-17 18:28:36 +01:00
|
|
|
mod observability;
|
2025-12-01 12:48:39 +01:00
|
|
|
mod runtime;
|
2026-02-19 06:30:43 +01:00
|
|
|
mod sources;
|
2025-12-01 12:48:39 +01:00
|
|
|
mod workload;
|
|
|
|
|
|
2026-02-02 07:19:22 +01:00
|
|
|
pub type DynError = Box<dyn Error + Send + Sync + 'static>;
|
2025-12-01 12:48:39 +01:00
|
|
|
|
2026-02-02 07:19:22 +01:00
|
|
|
pub use builder_ext::{BuilderInputError, ObservabilityBuilderExt};
|
|
|
|
|
#[doc(hidden)]
|
|
|
|
|
pub use builder_ops::CoreBuilderAccess;
|
2025-12-16 21:20:27 +01:00
|
|
|
pub use capabilities::{
|
2026-02-05 08:23:14 +02:00
|
|
|
NodeControlCapability, ObservabilityCapability, PeerSelection, RequiresNodeControl,
|
|
|
|
|
StartNodeOptions, StartedNode,
|
2025-12-16 21:20:27 +01:00
|
|
|
};
|
2026-02-02 07:19:22 +01:00
|
|
|
pub use common_builder_ext::CoreBuilderExt;
|
2026-02-05 08:23:14 +02:00
|
|
|
pub use control::NodeControlHandle;
|
2026-02-02 07:19:22 +01:00
|
|
|
#[doc(hidden)]
|
2025-12-18 22:48:45 +01:00
|
|
|
pub use definition::{
|
2026-02-02 07:19:22 +01:00
|
|
|
Builder as CoreBuilder, // internal adapter-facing core builder
|
|
|
|
|
NodeControlScenarioBuilder,
|
|
|
|
|
ObservabilityScenarioBuilder,
|
2025-12-18 22:48:45 +01:00
|
|
|
};
|
2026-02-02 07:19:22 +01:00
|
|
|
pub use definition::{Scenario, ScenarioBuildError, ScenarioBuilder};
|
|
|
|
|
pub use deployment_policy::{CleanupPolicy, DeploymentPolicy, RetryPolicy};
|
2025-12-01 12:48:39 +01:00
|
|
|
pub use expectation::Expectation;
|
2025-12-17 18:28:36 +01:00
|
|
|
pub use observability::{ObservabilityCapabilityProvider, ObservabilityInputs};
|
2025-12-01 12:48:39 +01:00
|
|
|
pub use runtime::{
|
2026-02-19 06:30:43 +01:00
|
|
|
BorrowedNode, BorrowedOrigin, CleanupGuard, Deployer, Feed, FeedHandle, FeedRuntime,
|
2026-02-19 10:36:52 +01:00
|
|
|
HttpReadinessRequirement, ManagedNode, ManagedSource, NodeClients, NodeHandle, NodeInventory,
|
|
|
|
|
ReadinessError, RunContext, RunHandle, RunMetrics, Runner, ScenarioError,
|
|
|
|
|
SourceOrchestrationPlan, SourceProviders, StabilizationConfig, StaticManagedProvider,
|
|
|
|
|
build_source_orchestration_plan,
|
2025-12-01 12:48:39 +01:00
|
|
|
metrics::{
|
|
|
|
|
CONSENSUS_PROCESSED_BLOCKS, CONSENSUS_TRANSACTIONS_TOTAL, Metrics, MetricsError,
|
|
|
|
|
PrometheusEndpoint, PrometheusInstantSample,
|
|
|
|
|
},
|
2026-02-19 10:36:52 +01:00
|
|
|
orchestrate_sources, resolve_sources, spawn_feed, wait_for_http_ports,
|
|
|
|
|
wait_for_http_ports_with_host, wait_for_http_ports_with_host_and_requirement,
|
|
|
|
|
wait_for_http_ports_with_requirement, wait_http_readiness, wait_until_stable,
|
2025-12-01 12:48:39 +01:00
|
|
|
};
|
2026-02-19 06:30:43 +01:00
|
|
|
pub use sources::{AttachSource, ExternalNodeSource, ScenarioSources, SourceReadinessPolicy};
|
2025-12-01 12:48:39 +01:00
|
|
|
pub use workload::Workload;
|
2026-02-02 07:19:22 +01:00
|
|
|
|
|
|
|
|
pub use crate::env::Application;
|