Skip to main content

windmill_api/models/
ducklake_settings_ducklakes_value.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.751.0
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 DucklakeSettingsDucklakesValue {
16    #[serde(rename = "catalog")]
17    pub catalog: Box<models::DucklakeSettingsDucklakesValueCatalog>,
18    #[serde(rename = "storage")]
19    pub storage: Box<models::DucklakeSettingsDucklakesValueStorage>,
20    #[serde(rename = "extra_args", skip_serializing_if = "Option::is_none")]
21    pub extra_args: Option<String>,
22    /// Fork workspaces only - how this lake behaves in the fork, stamped at fork creation. Absent = isolated (fork-scoped namespace + read-defer to parent).
23    #[serde(rename = "fork_behavior", skip_serializing_if = "Option::is_none")]
24    pub fork_behavior: Option<ForkBehavior>,
25    #[serde(rename = "maintenance", skip_serializing_if = "Option::is_none")]
26    pub maintenance: Option<Box<models::DucklakeSettingsDucklakesValueMaintenance>>,
27}
28
29impl DucklakeSettingsDucklakesValue {
30    pub fn new(catalog: models::DucklakeSettingsDucklakesValueCatalog, storage: models::DucklakeSettingsDucklakesValueStorage) -> DucklakeSettingsDucklakesValue {
31        DucklakeSettingsDucklakesValue {
32            catalog: Box::new(catalog),
33            storage: Box::new(storage),
34            extra_args: None,
35            fork_behavior: None,
36            maintenance: None,
37        }
38    }
39}
40/// Fork workspaces only - how this lake behaves in the fork, stamped at fork creation. Absent = isolated (fork-scoped namespace + read-defer to parent).
41#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
42pub enum ForkBehavior {
43    #[serde(rename = "isolated")]
44    Isolated,
45    #[serde(rename = "shared")]
46    Shared,
47}
48
49impl Default for ForkBehavior {
50    fn default() -> ForkBehavior {
51        Self::Isolated
52    }
53}
54