kea-lifecycle 0.1.0

buildpack lifecycle
Documentation
use crate::buildpack::{Version, error::BuildpackError};

pub type Result<T> = std::result::Result<T, LauncherError>;

#[derive(thiserror::Error, Debug)]
pub enum LauncherError {
    #[error("Invalid execution mode. ({0:?})")]
    BuildpackError(BuildpackError),

    #[error("Invalid execution mode. ({0:?})")]
    UnexpectedError(String),

    #[error("Invalid execution mode. ({0:?})")]
    InvalidExecutable(String),

    #[error("Unknown execution mode. ({0:?})")]
    UnknownExecutable(String),

    #[error("When there is no default process a command is required")]
    UserProvidedProcessNoArgs,

    #[error("Platform api is not supported. ({0:?})")]
    UnsupportedPlatformApi(Version),

    #[error("Platform api is depreciated. ({0:?})")]
    DepreciatedPlatformApi(Version),

    #[error("Buildpack api is not supported. ({0:?})")]
    UnsupportedBuildpackApi(Version),

    #[error("Buildpack api is depreciated. ({0:?})")]
    DepreciatedBuildpackApi(Version),

    #[error("Failed to read metadata.toml")]
    ReadingMetadata(std::io::Error),

    #[error("Failed to parse metadata.toml. ({0:?})")]
    ParsingMetadata(toml::de::Error),
}