use serde::Deserialize;
#[derive(Debug, Clone, Copy)]
pub enum LocalImageType {
UnknownType,
InstanceLocal,
InstanceSbs,
}
impl std::fmt::Display for LocalImageType {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
LocalImageType::UnknownType => write!(f, "unknown_type"),
LocalImageType::InstanceLocal => write!(f, "instance_local"),
LocalImageType::InstanceSbs => write!(f, "instance_sbs"),
}
}
}
#[derive(Debug, Clone, Copy)]
pub enum MarketplaceLocalImageOrderBy {
CreatedAtAsc,
CreatedAtDesc,
}
impl std::fmt::Display for MarketplaceLocalImageOrderBy {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
MarketplaceLocalImageOrderBy::CreatedAtAsc => write!(f, "created_at_asc"),
MarketplaceLocalImageOrderBy::CreatedAtDesc => write!(f, "created_at_desc"),
}
}
}
#[derive(Deserialize, Debug)]
pub struct ScalewayMarketplaceLocalImagesRoot {
pub local_images: Vec<ScalewayMarketplaceLocalImage>,
pub total_count: u64,
}
#[derive(Deserialize, Debug)]
pub struct ScalewayMarketplaceLocalImage {
pub id: String,
pub compatible_commercial_types: Vec<String>,
pub arch: String,
pub zone: String,
pub label: String,
#[serde(rename = "type")]
pub itype: String,
}