torrust_tracker_deployer_lib/presentation/mod.rs
1//! Presentation Layer
2//!
3//! This layer contains user-facing delivery mechanisms for the deployer application.
4//! It follows DDD architecture, separating presentation concerns from application
5//! and domain logic.
6//!
7//! ## Module Structure
8//!
9//! ```text
10//! presentation/
11//! └── cli/ # CLI delivery mechanism (Clap-based command-line interface)
12//! ```
13//!
14//! The SDK delivery mechanism has been extracted into the `torrust-tracker-deployer-sdk`
15//! workspace package (`packages/sdk/`).
16
17pub mod cli;
18
19// Re-export commonly used CLI types for backward compatibility.
20// External consumers can use either `presentation::Cli` or `presentation::cli::Cli`.
21pub use cli::{
22 handle_error, Cli, CommandError, Commands, CreateCommandError, CreateEnvironmentCommandError,
23 CreateEnvironmentTemplateCommandError, DestroySubcommandError, GlobalArgs, ProgressReporter,
24 Theme, UserOutput, VerbosityLevel,
25};