dagger_sdk/
errors.rs

1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum ConnectError {
5    #[error("failed to connect to dagger engine")]
6    FailedToConnect(#[source] eyre::Error),
7
8    #[error("an error occurred from the dagger context call")]
9    DaggerContext(#[source] eyre::Error),
10
11    #[error("failed to shutdown the dagger connection")]
12    FailedToShutdown(#[source] eyre::Error),
13}
14
15#[derive(Error, Debug)]
16pub enum DaggerError {
17    #[error("failed to build dagger internal graph")]
18    Build(#[source] eyre::Error),
19    #[error("failed to parse input type")]
20    Serialize(#[source] eyre::Error),
21    #[error("failed to query dagger engine: {0}")]
22    Query(#[source] crate::core::graphql_client::GraphQLError),
23    #[error("failed to unpack response")]
24    Unpack(#[source] DaggerUnpackError),
25    #[error("failed to download client")]
26    DownloadClient(#[source] eyre::Error),
27}
28
29#[derive(Error, Debug)]
30pub enum DaggerUnpackError {
31    #[error("Too many nested objects inside graphql response")]
32    TooManyNestedObjects,
33    #[error("failed to deserialize response")]
34    Deserialize(#[source] serde_json::Error),
35}