firecracker_rs_sdk/models/
full_vm_configuration.rs

1use serde::{Deserialize, Serialize};
2
3use super::*;
4#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq, PartialOrd, Ord, Hash)]
5pub struct FullVmConfiguration {
6    #[serde(rename = "balloon", skip_serializing_if = "Option::is_none")]
7    pub balloon: Option<balloon::Balloon>,
8
9    /// Configurations for all block devices.
10    #[serde(rename = "drive", skip_serializing_if = "Option::is_none")]
11    pub drives: Option<Vec<drive::Drive>>,
12
13    #[serde(rename = "boot-source", skip_serializing_if = "Option::is_none")]
14    pub boot_source: Option<boot_source::BootSource>,
15
16    #[serde(rename = "logger", skip_serializing_if = "Option::is_none")]
17    pub logger: Option<logger::Logger>,
18
19    #[serde(rename = "machine-config", skip_serializing_if = "Option::is_none")]
20    pub machine_config: Option<machine_configuration::MachineConfiguration>,
21
22    #[serde(rename = "metrics", skip_serializing_if = "Option::is_none")]
23    pub metrics: Option<metrics::Metrics>,
24
25    #[serde(rename = "mmds-config", skip_serializing_if = "Option::is_none")]
26    pub mmds_config: Option<mmds_config::MmdsConfig>,
27
28    /// Configurations for all net devices.
29    #[serde(rename = "network-interfaces", skip_serializing_if = "Option::is_none")]
30    pub network_interfaces: Option<Vec<network_interface::NetworkInterface>>,
31
32    #[serde(rename = "vsock", skip_serializing_if = "Option::is_none")]
33    pub vsock: Option<vsock::Vsock>,
34}