1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretCreateK8s {
17 #[serde(rename = "custom-username-template", skip_serializing_if = "Option::is_none")]
19 pub custom_username_template: Option<String>,
20 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
22 pub delete_protection: Option<String>,
23 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
25 pub description: Option<String>,
26 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
28 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
29 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
31 pub json: Option<bool>,
32 #[serde(rename = "k8s-allowed-namespaces", skip_serializing_if = "Option::is_none")]
34 pub k8s_allowed_namespaces: Option<String>,
35 #[serde(rename = "k8s-cluster-ca-cert", skip_serializing_if = "Option::is_none")]
37 pub k8s_cluster_ca_cert: Option<String>,
38 #[serde(rename = "k8s-cluster-endpoint", skip_serializing_if = "Option::is_none")]
40 pub k8s_cluster_endpoint: Option<String>,
41 #[serde(rename = "k8s-cluster-name", skip_serializing_if = "Option::is_none")]
43 pub k8s_cluster_name: Option<String>,
44 #[serde(rename = "k8s-cluster-token", skip_serializing_if = "Option::is_none")]
46 pub k8s_cluster_token: Option<String>,
47 #[serde(rename = "k8s-namespace", skip_serializing_if = "Option::is_none")]
49 pub k8s_namespace: Option<String>,
50 #[serde(rename = "k8s-predefined-role-name", skip_serializing_if = "Option::is_none")]
52 pub k8s_predefined_role_name: Option<String>,
53 #[serde(rename = "k8s-predefined-role-type", skip_serializing_if = "Option::is_none")]
55 pub k8s_predefined_role_type: Option<String>,
56 #[serde(rename = "k8s-rolebinding-yaml-data", skip_serializing_if = "Option::is_none")]
58 pub k8s_rolebinding_yaml_data: Option<String>,
59 #[serde(rename = "k8s-rolebinding-yaml-def", skip_serializing_if = "Option::is_none")]
61 pub k8s_rolebinding_yaml_def: Option<String>,
62 #[serde(rename = "k8s-service-account", skip_serializing_if = "Option::is_none")]
64 pub k8s_service_account: Option<String>,
65 #[serde(rename = "k8s-service-account-type", skip_serializing_if = "Option::is_none")]
67 pub k8s_service_account_type: Option<String>,
68 #[serde(rename = "name")]
70 pub name: String,
71 #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
73 pub producer_encryption_key_name: Option<String>,
74 #[serde(rename = "secure-access-allow-port-forwading", skip_serializing_if = "Option::is_none")]
76 pub secure_access_allow_port_forwading: Option<bool>,
77 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
79 pub secure_access_bastion_issuer: Option<String>,
80 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
82 pub secure_access_certificate_issuer: Option<String>,
83 #[serde(rename = "secure-access-cluster-endpoint", skip_serializing_if = "Option::is_none")]
85 pub secure_access_cluster_endpoint: Option<String>,
86 #[serde(rename = "secure-access-dashboard-url", skip_serializing_if = "Option::is_none")]
88 pub secure_access_dashboard_url: Option<String>,
89 #[serde(rename = "secure-access-delay", skip_serializing_if = "Option::is_none")]
91 pub secure_access_delay: Option<i64>,
92 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
94 pub secure_access_enable: Option<String>,
95 #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
97 pub secure_access_web: Option<bool>,
98 #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
100 pub secure_access_web_browsing: Option<bool>,
101 #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
103 pub secure_access_web_proxy: Option<bool>,
104 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
106 pub tags: Option<Vec<String>>,
107 #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
109 pub target_name: Option<String>,
110 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
112 pub token: Option<String>,
113 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
115 pub uid_token: Option<String>,
116 #[serde(rename = "use-gw-service-account", skip_serializing_if = "Option::is_none")]
118 pub use_gw_service_account: Option<bool>,
119 #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
121 pub user_ttl: Option<String>,
122}
123
124impl DynamicSecretCreateK8s {
125 pub fn new(name: String) -> DynamicSecretCreateK8s {
127 DynamicSecretCreateK8s {
128 custom_username_template: None,
129 delete_protection: None,
130 description: None,
131 item_custom_fields: None,
132 json: None,
133 k8s_allowed_namespaces: None,
134 k8s_cluster_ca_cert: None,
135 k8s_cluster_endpoint: None,
136 k8s_cluster_name: None,
137 k8s_cluster_token: None,
138 k8s_namespace: None,
139 k8s_predefined_role_name: None,
140 k8s_predefined_role_type: None,
141 k8s_rolebinding_yaml_data: None,
142 k8s_rolebinding_yaml_def: None,
143 k8s_service_account: None,
144 k8s_service_account_type: None,
145 name,
146 producer_encryption_key_name: None,
147 secure_access_allow_port_forwading: None,
148 secure_access_bastion_issuer: None,
149 secure_access_certificate_issuer: None,
150 secure_access_cluster_endpoint: None,
151 secure_access_dashboard_url: None,
152 secure_access_delay: None,
153 secure_access_enable: None,
154 secure_access_web: None,
155 secure_access_web_browsing: None,
156 secure_access_web_proxy: None,
157 tags: None,
158 target_name: None,
159 token: None,
160 uid_token: None,
161 use_gw_service_account: None,
162 user_ttl: None,
163 }
164 }
165}
166