tsafe-cli 1.0.27

Secrets runtime for developers — inject credentials into processes via exec, never into shell history or .env files
use thiserror::Error;

#[derive(Debug, Error)]
pub enum AwsError {
    /// A required environment variable is missing or invalid.
    #[error("AWS configuration error: {0}")]
    Config(String),

    /// Credential acquisition failed (static env, ECS, or IMDSv2).
    #[error("AWS authentication failed: {0}")]
    Auth(String),

    /// The requested secret does not exist.
    #[error("AWS secret not found: {0}")]
    NotFound(String),

    /// Unexpected HTTP status returned by Secrets Manager.
    #[error("AWS Secrets Manager HTTP {status}: {message}")]
    Http { status: u16, message: String },

    /// Network or ureq transport error.
    #[error("transport error: {0}")]
    Transport(String),
}