windmill_api/models/
protection_rule_kind.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
16pub enum ProtectionRuleKind {
17 #[serde(rename = "DisableDirectDeployment")]
18 DisableDirectDeployment,
19 #[serde(rename = "DisableWorkspaceForking")]
20 DisableWorkspaceForking,
21 #[serde(rename = "RestrictDeployToDeployers")]
22 RestrictDeployToDeployers,
23 #[serde(rename = "RestrictAnonymousAppDeployment")]
24 RestrictAnonymousAppDeployment,
25 #[serde(rename = "RestrictPublicRunSharing")]
26 RestrictPublicRunSharing,
27 #[serde(rename = "RestrictGuestAppDeployment")]
28 RestrictGuestAppDeployment,
29
30}
31
32impl std::fmt::Display for ProtectionRuleKind {
33 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
34 match self {
35 Self::DisableDirectDeployment => write!(f, "DisableDirectDeployment"),
36 Self::DisableWorkspaceForking => write!(f, "DisableWorkspaceForking"),
37 Self::RestrictDeployToDeployers => write!(f, "RestrictDeployToDeployers"),
38 Self::RestrictAnonymousAppDeployment => write!(f, "RestrictAnonymousAppDeployment"),
39 Self::RestrictPublicRunSharing => write!(f, "RestrictPublicRunSharing"),
40 Self::RestrictGuestAppDeployment => write!(f, "RestrictGuestAppDeployment"),
41 }
42 }
43}
44
45impl Default for ProtectionRuleKind {
46 fn default() -> ProtectionRuleKind {
47 Self::DisableDirectDeployment
48 }
49}
50