-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmod.rs
More file actions
48 lines (46 loc) · 1.88 KB
/
mod.rs
File metadata and controls
48 lines (46 loc) · 1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*!
* Steps Module - Level 2 of Three-Level Architecture
*
* This module organizes deployment steps by operation type for maximum reusability
* and clear separation of concerns. Steps are reusable building blocks that can be
* composed into commands (Level 1) and may use remote actions (Level 3).
*
* Organization by Operation Type:
* - rendering/ - Template and configuration generation
* - infrastructure/ - Infrastructure lifecycle (`OpenTofu` operations)
* - system/ - System-level configuration and management
* - software/ - Software installation and management
* - application/ - Application deployment and lifecycle
* - connectivity/ - Network and connection operations
* - validation/ - Testing and validation operations
*
* This organization supports the full planned command ecosystem while enabling
* step reuse across multiple commands.
*/
pub mod application;
pub mod connectivity;
pub mod infrastructure;
pub mod rendering;
pub mod software;
pub mod system;
pub mod validation;
// Re-export all steps for easy access
pub use application::{DeployComposeFilesStep, DeployComposeFilesStepError, RunStep, RunStepError};
pub use connectivity::WaitForSSHConnectivityStep;
pub use infrastructure::{
ApplyInfrastructureStep, DestroyInfrastructureStep, GetInstanceInfoStep,
InitializeInfrastructureStep, PlanInfrastructureStep, ValidateInfrastructureStep,
};
pub use rendering::{
ansible_templates::RenderAnsibleTemplatesError, RenderAnsibleTemplatesStep,
RenderDockerComposeTemplatesStep, RenderOpenTofuTemplatesStep,
};
pub use software::{InstallDockerComposeStep, InstallDockerStep};
pub use system::{
ConfigureFirewallStep, ConfigureSecurityUpdatesStep, InstallBackupCrontabStep,
WaitForCloudInitStep,
};
pub use validation::{
ValidateCloudInitCompletionStep, ValidateDockerComposeInstallationStep,
ValidateDockerInstallationStep,
};