#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct CreateServerRequest {
#[serde(rename = "automount", skip_serializing_if = "Option::is_none")]
pub automount: Option<bool>,
#[serde(rename = "datacenter", skip_serializing_if = "Option::is_none")]
pub datacenter: Option<String>,
#[serde(rename = "firewalls", skip_serializing_if = "Option::is_none")]
pub firewalls: Option<Vec<crate::models::CreateServerRequestFirewalls>>,
#[serde(rename = "image")]
pub image: String,
#[serde(rename = "labels", skip_serializing_if = "Option::is_none")]
pub labels: Option<::std::collections::HashMap<String, String>>,
#[serde(rename = "location", skip_serializing_if = "Option::is_none")]
pub location: Option<String>,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "networks", skip_serializing_if = "Option::is_none")]
pub networks: Option<Vec<i32>>,
#[serde(rename = "placement_group", skip_serializing_if = "Option::is_none")]
pub placement_group: Option<i32>,
#[serde(rename = "public_net", skip_serializing_if = "Option::is_none")]
pub public_net: Option<Box<crate::models::CreateServerRequestPublicNet>>,
#[serde(rename = "server_type")]
pub server_type: String,
#[serde(rename = "ssh_keys", skip_serializing_if = "Option::is_none")]
pub ssh_keys: Option<Vec<String>>,
#[serde(rename = "start_after_create", skip_serializing_if = "Option::is_none")]
pub start_after_create: Option<bool>,
#[serde(rename = "user_data", skip_serializing_if = "Option::is_none")]
pub user_data: Option<String>,
#[serde(rename = "volumes", skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<i32>>,
}
impl CreateServerRequest {
#![allow(clippy::too_many_arguments)]
pub fn new(image: String, name: String, server_type: String) -> CreateServerRequest {
CreateServerRequest {
automount: None,
datacenter: None,
firewalls: None,
image,
labels: None,
location: None,
name,
networks: None,
placement_group: None,
public_net: None,
server_type,
ssh_keys: None,
start_after_create: None,
user_data: None,
volumes: None,
}
}
}