mod copy;
mod flash;
mod imxkobs;
mod mender;
mod raw;
mod raw_delta;
mod tarball;
mod test;
mod ubifs;
mod uboot_env;
mod zephyr;
mod update_package;
pub mod definitions;
pub mod objects {
pub use crate::{
copy::Copy, flash::Flash, imxkobs::Imxkobs, mender::Mender, raw::Raw, raw_delta::RawDelta,
tarball::Tarball, test::Test, ubifs::Ubifs, uboot_env::UbootEnv, zephyr::Zephyr,
};
}
pub use update_package::{SupportedHardware, UpdatePackage};
use serde::Deserialize;
#[derive(Clone, Deserialize, PartialEq, Eq, Debug)]
#[serde(tag = "mode")]
#[serde(rename_all = "lowercase")]
pub enum Object {
Copy(Box<objects::Copy>),
Flash(Box<objects::Flash>),
Imxkobs(Box<objects::Imxkobs>),
Mender(Box<objects::Mender>),
Raw(Box<objects::Raw>),
#[serde(rename = "raw-delta")]
RawDelta(Box<objects::RawDelta>),
Tarball(Box<objects::Tarball>),
Test(Box<objects::Test>),
Ubifs(Box<objects::Ubifs>),
#[serde(rename = "uboot-env")]
UbootEnv(Box<objects::UbootEnv>),
Zephyr(Box<objects::Zephyr>),
}