Expand description
Remote actions module (Level 3 of Three-Level Architecture)
This module provides the lowest-level operations in the three-level architecture, containing leaf-level actions that directly interact with remote systems via SSH. These actions are the building blocks used by steps (Level 2) and commands (Level 1).
§Execution Context: Inside VM via SSH
All remote actions in this module execute commands INSIDE the VM via SSH.
For external validation (E2E testing from outside the VM), see external_validators/.
Distinction:
remote_actions(this module): Execute commands inside VM via SSHexternal_validators: Validate services from outside VM via HTTP
§Available Remote Actions
validators::cloud_init- Cloud-init status checking and validationvalidators::docker- Docker installation and service managementvalidators::docker_compose- Docker Compose installation and validation
§Architecture Pattern
Remote actions follow a consistent pattern:
- Take SSH connection and required parameters
- Execute specific remote operations via SSH
- Provide structured error handling with action context
- Return typed results for use by higher-level components
These actions are designed to be atomic, testable, and reusable across different deployment scenarios.
Re-exports§
pub use validators::cloud_init::CloudInitValidator;pub use validators::docker::DockerValidator;pub use validators::docker_compose::DockerComposeValidator;
Modules§
Enums§
- Remote
Action Error - Errors that can occur during remote action execution
Traits§
- Remote
Action - Trait for remote actions that can be executed on a server via SSH