Skip to main content

windmill_api/models/
operator_settings.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.824.1
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct OperatorSettings {
16    /// Whether operators can view runs
17    #[serde(rename = "runs")]
18    pub runs: bool,
19    /// Whether operators can view schedules
20    #[serde(rename = "schedules")]
21    pub schedules: bool,
22    /// Whether operators can view resources
23    #[serde(rename = "resources")]
24    pub resources: bool,
25    /// Whether operators can view variables
26    #[serde(rename = "variables")]
27    pub variables: bool,
28    /// Whether operators can view assets
29    #[serde(rename = "assets")]
30    pub assets: bool,
31    /// Whether operators can view audit logs
32    #[serde(rename = "audit_logs")]
33    pub audit_logs: bool,
34    /// Whether operators can view triggers
35    #[serde(rename = "triggers")]
36    pub triggers: bool,
37    /// Whether operators can view groups page
38    #[serde(rename = "groups")]
39    pub groups: bool,
40    /// Whether operators can view folders page
41    #[serde(rename = "folders")]
42    pub folders: bool,
43    /// Whether operators can view workers page
44    #[serde(rename = "workers")]
45    pub workers: bool,
46    /// Whether operators can compose flows out of existing runnables (consumes a full seat). Omitting the field leaves the stored value unchanged.
47    #[serde(rename = "builder_flows", skip_serializing_if = "Option::is_none")]
48    pub builder_flows: Option<bool>,
49    /// Whether operators can create, edit and delete schedules. Granted unless withdrawn; omitting the field leaves the stored value unchanged.
50    #[serde(rename = "manage_schedules", skip_serializing_if = "Option::is_none")]
51    pub manage_schedules: Option<bool>,
52    /// Whether operators can create, edit and delete triggers. Granted unless withdrawn; omitting the field leaves the stored value unchanged.
53    #[serde(rename = "manage_triggers", skip_serializing_if = "Option::is_none")]
54    pub manage_triggers: Option<bool>,
55}
56
57impl OperatorSettings {
58    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 {
59        OperatorSettings {
60            runs,
61            schedules,
62            resources,
63            variables,
64            assets,
65            audit_logs,
66            triggers,
67            groups,
68            folders,
69            workers,
70            builder_flows: None,
71            manage_schedules: None,
72            manage_triggers: None,
73        }
74    }
75}
76