windmill_api/models/
git_repository_settings.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct GitRepositorySettings {
16 #[serde(rename = "script_path")]
17 pub script_path: String,
18 #[serde(rename = "git_repo_resource_path")]
19 pub git_repo_resource_path: String,
20 #[serde(rename = "use_individual_branch", skip_serializing_if = "Option::is_none")]
21 pub use_individual_branch: Option<bool>,
22 #[serde(rename = "group_by_folder", skip_serializing_if = "Option::is_none")]
23 pub group_by_folder: Option<bool>,
24 #[serde(rename = "collapsed", skip_serializing_if = "Option::is_none")]
25 pub collapsed: Option<bool>,
26 #[serde(rename = "settings", skip_serializing_if = "Option::is_none")]
27 pub settings: Option<Box<models::GitRepositorySettingsSettings>>,
28 #[serde(rename = "exclude_types_override", skip_serializing_if = "Option::is_none")]
29 pub exclude_types_override: Option<Vec<ExcludeTypesOverride>>,
30}
31
32impl GitRepositorySettings {
33 pub fn new(script_path: String, git_repo_resource_path: String) -> GitRepositorySettings {
34 GitRepositorySettings {
35 script_path,
36 git_repo_resource_path,
37 use_individual_branch: None,
38 group_by_folder: None,
39 collapsed: None,
40 settings: None,
41 exclude_types_override: None,
42 }
43 }
44}
45#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
47pub enum ExcludeTypesOverride {
48 #[serde(rename = "script")]
49 Script,
50 #[serde(rename = "flow")]
51 Flow,
52 #[serde(rename = "app")]
53 App,
54 #[serde(rename = "folder")]
55 Folder,
56 #[serde(rename = "resource")]
57 Resource,
58 #[serde(rename = "variable")]
59 Variable,
60 #[serde(rename = "secret")]
61 Secret,
62 #[serde(rename = "resourcetype")]
63 Resourcetype,
64 #[serde(rename = "schedule")]
65 Schedule,
66 #[serde(rename = "user")]
67 User,
68 #[serde(rename = "group")]
69 Group,
70 #[serde(rename = "trigger")]
71 Trigger,
72 #[serde(rename = "settings")]
73 Settings,
74 #[serde(rename = "key")]
75 Key,
76}
77
78impl Default for ExcludeTypesOverride {
79 fn default() -> ExcludeTypesOverride {
80 Self::Script
81 }
82}
83