use serde_derive::*;
pub const VERSION: u16 = 0;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Job {
pub id: uuid::Uuid,
pub repo: uuid::Uuid,
pub channel: String,
pub state: libpijul::pristine::Merkle,
pub extra_patches: Vec<libpijul::pristine::Hash>,
}
#[derive(Debug, Serialize, Deserialize)]
pub enum Message {
Handshake {
version: u16,
id: i64,
},
Ready,
Job(Job),
GetTarball {
id: uuid::Uuid,
},
InvalidInput {
input: String,
},
Log {
job: Job,
exit_status: Option<i32>,
path: Option<std::path::PathBuf>,
},
Chunk {
id: uuid::Uuid,
stderr: bool,
len: u32,
},
}