37 lines
937 B
Rust
37 lines
937 B
Rust
use std::collections::HashMap;
|
|
use serde::{Deserialize, Serialize};
|
|
use serde_value::Value;
|
|
|
|
#[derive(Debug, Deserialize, Serialize)]
|
|
pub struct BuildManifest {
|
|
#[serde(default)]
|
|
pub sources: Option<Vec<String>>,
|
|
#[serde(flatten)]
|
|
pub other: HashMap<String, Value>,
|
|
}
|
|
|
|
#[derive(Debug, Serialize)]
|
|
pub struct SubmitBuildPayload {
|
|
pub manifest: String,
|
|
#[serde(skip_serializing_if = "Option::is_none")]
|
|
pub note: Option<String>,
|
|
#[serde(skip_serializing_if = "Option::is_none")]
|
|
pub tags: Option<Vec<String>>,
|
|
#[serde(skip_serializing_if = "Option::is_none")]
|
|
pub execute: Option<bool>,
|
|
#[serde(skip_serializing_if = "Option::is_none")]
|
|
pub secrets: Option<bool>,
|
|
}
|
|
|
|
#[derive(Debug, Deserialize)]
|
|
pub struct SubmitBuildResponse {
|
|
pub id: u32,
|
|
pub owner: BuildOwner,
|
|
}
|
|
|
|
#[derive(Debug, Deserialize)]
|
|
pub struct BuildOwner {
|
|
pub canonical_name: String,
|
|
pub name: String,
|
|
}
|