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
//! This crate provides utilities for building, running, and managing external commands within the Cloud Terrastodon project. It includes features for:
//!
//! - Specifying different command kinds (Azure CLI, Terraform, VSCode, Echo, Pwsh).
//! - Building command arguments and environment variables.
//! - Handling file arguments for commands like Azure CLI.
//! - Configuring output behavior (capture or display).
//! - Implementing retry logic for authentication failures.
//! - Caching command output for improved performance.
//! - Sending content to command stdin.
//! - Writing command failures and successes to files for debugging and caching.
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
pub use crate*;
// Re-export async_trait for use in command implementations
pub use async_trait;
// TODO: add a `last_used` file to cache entries so we can
// give the user the list of recently used cache entries to
// let the user surgically bust individual caches instead of only being able to clear the entire cache