Skip to main content

tsafe_aws/
error.rs

1use thiserror::Error;
2
3#[derive(Debug, Error)]
4pub enum AwsError {
5    /// A required environment variable is missing or invalid.
6    #[error("AWS configuration error: {0}")]
7    Config(String),
8
9    /// Credential acquisition failed (static env, ECS, or IMDSv2).
10    #[error("AWS authentication failed: {0}")]
11    Auth(String),
12
13    /// The requested secret does not exist.
14    #[error("AWS secret not found: {0}")]
15    NotFound(String),
16
17    /// Unexpected HTTP status returned by Secrets Manager.
18    #[error("AWS Secrets Manager HTTP {status}: {message}")]
19    Http { status: u16, message: String },
20
21    /// Network or ureq transport error.
22    #[error("transport error: {0}")]
23    Transport(String),
24}