use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IoCattleManagementv3ClusterSpec {
#[serde(rename = "agentEnvVars", skip_serializing_if = "Option::is_none")]
pub agent_env_vars: Option<Vec<serde_json::Value>>,
#[serde(rename = "agentImageOverride", skip_serializing_if = "Option::is_none")]
pub agent_image_override: Option<String>,
#[serde(rename = "aksConfig", skip_serializing_if = "Option::is_none")]
pub aks_config: Option<serde_json::Value>,
#[serde(rename = "amazonElasticContainerServiceConfig", skip_serializing_if = "Option::is_none")]
pub amazon_elastic_container_service_config: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "answers", skip_serializing_if = "Option::is_none")]
pub answers: Option<serde_json::Value>,
#[serde(rename = "azureKubernetesServiceConfig", skip_serializing_if = "Option::is_none")]
pub azure_kubernetes_service_config: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "clusterAgentDeploymentCustomization", skip_serializing_if = "Option::is_none")]
pub cluster_agent_deployment_customization: Option<serde_json::Value>,
#[serde(rename = "clusterSecrets", skip_serializing_if = "Option::is_none")]
pub cluster_secrets: Option<serde_json::Value>,
#[serde(rename = "clusterTemplateId", skip_serializing_if = "Option::is_none")]
pub cluster_template_id: Option<String>,
#[serde(rename = "clusterTemplateRevisionId", skip_serializing_if = "Option::is_none")]
pub cluster_template_revision_id: Option<String>,
#[serde(rename = "defaultClusterRoleForProjectMembers", skip_serializing_if = "Option::is_none")]
pub default_cluster_role_for_project_members: Option<String>,
#[serde(rename = "defaultPodSecurityAdmissionConfigurationTemplateName", skip_serializing_if = "Option::is_none")]
pub default_pod_security_admission_configuration_template_name: Option<String>,
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "desiredAgentImage", skip_serializing_if = "Option::is_none")]
pub desired_agent_image: Option<String>,
#[serde(rename = "desiredAuthImage", skip_serializing_if = "Option::is_none")]
pub desired_auth_image: Option<String>,
#[serde(rename = "displayName")]
pub display_name: String,
#[serde(rename = "dockerRootDir", skip_serializing_if = "Option::is_none")]
pub docker_root_dir: Option<String>,
#[serde(rename = "eksConfig", skip_serializing_if = "Option::is_none")]
pub eks_config: Option<serde_json::Value>,
#[serde(rename = "enableNetworkPolicy", skip_serializing_if = "Option::is_none")]
pub enable_network_policy: Option<bool>,
#[serde(rename = "fleetAgentDeploymentCustomization", skip_serializing_if = "Option::is_none")]
pub fleet_agent_deployment_customization: Option<serde_json::Value>,
#[serde(rename = "fleetWorkspaceName", skip_serializing_if = "Option::is_none")]
pub fleet_workspace_name: Option<String>,
#[serde(rename = "genericEngineConfig", skip_serializing_if = "Option::is_none")]
pub generic_engine_config: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "gkeConfig", skip_serializing_if = "Option::is_none")]
pub gke_config: Option<serde_json::Value>,
#[serde(rename = "googleKubernetesEngineConfig", skip_serializing_if = "Option::is_none")]
pub google_kubernetes_engine_config: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "importedConfig", skip_serializing_if = "Option::is_none")]
pub imported_config: Option<serde_json::Value>,
#[serde(rename = "internal", skip_serializing_if = "Option::is_none")]
pub internal: Option<bool>,
#[serde(rename = "k3sConfig", skip_serializing_if = "Option::is_none")]
pub k3s_config: Option<serde_json::Value>,
#[serde(rename = "localClusterAuthEndpoint", skip_serializing_if = "Option::is_none")]
pub local_cluster_auth_endpoint: Option<serde_json::Value>,
#[serde(rename = "questions", skip_serializing_if = "Option::is_none")]
pub questions: Option<Vec<serde_json::Value>>,
#[serde(rename = "rancherKubernetesEngineConfig", skip_serializing_if = "Option::is_none")]
pub rancher_kubernetes_engine_config: Option<serde_json::Value>,
#[serde(rename = "rke2Config", skip_serializing_if = "Option::is_none")]
pub rke2_config: Option<serde_json::Value>,
#[serde(rename = "windowsPreferedCluster", skip_serializing_if = "Option::is_none")]
pub windows_prefered_cluster: Option<bool>,
}
impl IoCattleManagementv3ClusterSpec {
pub fn new(display_name: String) -> IoCattleManagementv3ClusterSpec {
IoCattleManagementv3ClusterSpec {
agent_env_vars: None,
agent_image_override: None,
aks_config: None,
amazon_elastic_container_service_config: None,
answers: None,
azure_kubernetes_service_config: None,
cluster_agent_deployment_customization: None,
cluster_secrets: None,
cluster_template_id: None,
cluster_template_revision_id: None,
default_cluster_role_for_project_members: None,
default_pod_security_admission_configuration_template_name: None,
description: None,
desired_agent_image: None,
desired_auth_image: None,
display_name,
docker_root_dir: None,
eks_config: None,
enable_network_policy: None,
fleet_agent_deployment_customization: None,
fleet_workspace_name: None,
generic_engine_config: None,
gke_config: None,
google_kubernetes_engine_config: None,
imported_config: None,
internal: None,
k3s_config: None,
local_cluster_auth_endpoint: None,
questions: None,
rancher_kubernetes_engine_config: None,
rke2_config: None,
windows_prefered_cluster: None,
}
}
}