Skip to main content

ralph_workflow/cloud/
mod.rs

1//! Cloud integration for containerized deployments.
2//!
3//! This module provides abstractions for ralph-workflow to run in cloud
4//! environments with external orchestration. All cloud functionality is:
5//!
6//! - **Environment-variable configured only** (not in config files)
7//! - **Disabled by default**
8//! - **Invisible to CLI users** (no CLI flags, no help text)
9//! - **Purely additive** (zero behavior change when disabled)
10//!
11//! ## Architecture
12//!
13//! Cloud support is trait-based for testability:
14//! - `CloudReporter` - Abstract interface for progress reporting
15//! - `NoopCloudReporter` - Default (does nothing)
16//! - `HttpCloudReporter` - Production HTTP API client
17//! - `MockCloudReporter` - Testing (captures calls)
18
19pub mod heartbeat;
20pub mod redaction;
21pub mod reporter;
22pub mod types;
23
24pub use heartbeat::HeartbeatGuard;
25pub use reporter::{CloudReporter, HttpCloudReporter, NoopCloudReporter};
26pub use types::{CloudError, PipelineResult, ProgressEventType, ProgressUpdate};
27
28#[cfg(any(test, feature = "test-utils"))]
29pub mod mock;
30#[cfg(any(test, feature = "test-utils"))]
31pub use mock::MockCloudReporter;