use serde::Deserialize;
use crate::helpers::Class;
use super::{Artifact, Build, BuildStatus, ShortBuild};
use crate::action::CommonAction;
use crate::changeset;
use crate::job::{MatrixConfiguration, MatrixProject};
use crate::user::ShortUser;
build_with_common_fields_and_impl!(
#[derive(Deserialize, Debug)]
#[serde(rename_all = "camelCase")]
pub struct MatrixBuild<ParentJob = MatrixProject> {
pub change_set: changeset::CommonChangeSetList,
pub runs: Vec<ShortBuild<MatrixRun>>,
pub built_on: String,
pub culprits: Vec<ShortUser>,
}
);
register_class!("hudson.matrix.MatrixBuild" => MatrixBuild);
impl MatrixBuild {}
build_with_common_fields_and_impl!(
#[derive(Deserialize, Debug)]
#[serde(rename_all = "camelCase")]
pub struct MatrixRun<ParentJob = MatrixConfiguration> {
pub change_set: changeset::CommonChangeSetList,
pub built_on: String,
pub culprits: Vec<ShortUser>,
}
);
register_class!("hudson.matrix.MatrixRun" => MatrixRun);
impl MatrixRun {}