windmill_api/models/
operator_settings.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct OperatorSettings {
16 #[serde(rename = "runs")]
18 pub runs: bool,
19 #[serde(rename = "schedules")]
21 pub schedules: bool,
22 #[serde(rename = "resources")]
24 pub resources: bool,
25 #[serde(rename = "variables")]
27 pub variables: bool,
28 #[serde(rename = "assets")]
30 pub assets: bool,
31 #[serde(rename = "audit_logs")]
33 pub audit_logs: bool,
34 #[serde(rename = "triggers")]
36 pub triggers: bool,
37 #[serde(rename = "groups")]
39 pub groups: bool,
40 #[serde(rename = "folders")]
42 pub folders: bool,
43 #[serde(rename = "workers")]
45 pub workers: bool,
46 #[serde(rename = "builder_flows", skip_serializing_if = "Option::is_none")]
48 pub builder_flows: Option<bool>,
49 #[serde(rename = "builder_apps", skip_serializing_if = "Option::is_none")]
51 pub builder_apps: Option<bool>,
52 #[serde(rename = "manage_schedules", skip_serializing_if = "Option::is_none")]
54 pub manage_schedules: Option<bool>,
55 #[serde(rename = "manage_triggers", skip_serializing_if = "Option::is_none")]
57 pub manage_triggers: Option<bool>,
58}
59
60impl OperatorSettings {
61 pub fn new(runs: bool, schedules: bool, resources: bool, variables: bool, assets: bool, audit_logs: bool, triggers: bool, groups: bool, folders: bool, workers: bool) -> OperatorSettings {
62 OperatorSettings {
63 runs,
64 schedules,
65 resources,
66 variables,
67 assets,
68 audit_logs,
69 triggers,
70 groups,
71 folders,
72 workers,
73 builder_flows: None,
74 builder_apps: None,
75 manage_schedules: None,
76 manage_triggers: None,
77 }
78 }
79}
80