fluentci_types/
process_compose.rs1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize)]
6pub struct DependencyConfig {
7 #[serde(skip_serializing_if = "Option::is_none")]
8 pub condition: Option<String>,
9}
10
11#[derive(Serialize, Deserialize, Default)]
12pub struct Process {
13 pub command: String,
14 #[serde(skip_serializing_if = "Option::is_none")]
15 pub is_daemon: Option<bool>,
16 #[serde(skip_serializing_if = "Option::is_none")]
17 pub depends_on: Option<HashMap<String, DependencyConfig>>,
18 #[serde(skip_serializing_if = "Option::is_none")]
19 pub working_dir: Option<String>,
20}
21
22#[derive(Serialize, Deserialize, Default)]
23pub struct ConfigFile {
24 pub version: String,
25
26 #[serde(skip_serializing_if = "Option::is_none")]
27 pub environment: Option<Vec<String>>,
28
29 #[serde(skip_serializing_if = "Option::is_none")]
30 pub log_location: Option<String>,
31
32 #[serde(skip_serializing_if = "Option::is_none")]
33 pub log_level: Option<String>,
34
35 pub processes: HashMap<String, Process>,
36}