devops_armory/toml_parser/
models.rs1use serde::Deserialize;
2
3#[derive(Default, Debug, Deserialize)]
4pub struct Root {
5 pub rustible: Vec<Rustible>,
6}
7
8#[derive(Default, Debug, Deserialize)]
9pub struct Rustible {
10 pub vm: Vec<Vm>,
11 pub bare_metal: Vec<BareMetal>,
12}
13
14#[derive(Default, Debug, Deserialize)]
15pub struct Vm {
16 pub ubuntu: VMSpecs,
17 pub slackware: VMSpecs,
18 pub debian: VMSpecs,
19 pub centos: VMSpecs,
20 pub fedora: VMSpecs,
21 pub opensuse: VMSpecs
22}
23
24#[derive(Default, Debug, Deserialize)]
25pub struct VMSpecs {
26 pub ip_address_list: Vec<String>,
27 pub commands: Vec<String>,
28}
29
30#[derive(Default, Debug, Deserialize)]
31pub struct BareMetal {
32 pub ubuntu: BareMetalSpecs,
33 pub debian: BareMetalSpecs,
34 pub slackware: BareMetalSpecs,
35 pub centos: BareMetalSpecs,
36 pub fedora: BareMetalSpecs,
37 pub opensuse: BareMetalSpecs
38}
39
40#[derive(Default, Debug, Deserialize)]
41pub struct BareMetalSpecs {
42 pub ip_address_list: Vec<String>,
43 pub commands: Vec<String>,
44}