use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct HostInfo {
#[serde(rename = "arch", skip_serializing_if = "Option::is_none")]
pub arch: Option<String>,
#[serde(rename = "buildahVersion", skip_serializing_if = "Option::is_none")]
pub buildah_version: Option<String>,
#[serde(rename = "cgroupControllers", skip_serializing_if = "Option::is_none")]
pub cgroup_controllers: Option<Vec<String>>,
#[serde(rename = "cgroupManager", skip_serializing_if = "Option::is_none")]
pub cgroup_manager: Option<String>,
#[serde(rename = "cgroupVersion", skip_serializing_if = "Option::is_none")]
pub cgroup_version: Option<String>,
#[serde(rename = "conmon", skip_serializing_if = "Option::is_none")]
pub conmon: Option<Box<models::ConmonInfo>>,
#[serde(rename = "cpuUtilization", skip_serializing_if = "Option::is_none")]
pub cpu_utilization: Option<Box<models::CpuUsage>>,
#[serde(rename = "cpus", skip_serializing_if = "Option::is_none")]
pub cpus: Option<i64>,
#[serde(rename = "databaseBackend", skip_serializing_if = "Option::is_none")]
pub database_backend: Option<String>,
#[serde(rename = "distribution", skip_serializing_if = "Option::is_none")]
pub distribution: Option<Box<models::DistributionInfo>>,
#[serde(rename = "eventLogger", skip_serializing_if = "Option::is_none")]
pub event_logger: Option<String>,
#[serde(rename = "freeLocks", skip_serializing_if = "Option::is_none")]
pub free_locks: Option<i32>,
#[serde(rename = "hostname", skip_serializing_if = "Option::is_none")]
pub hostname: Option<String>,
#[serde(rename = "idMappings", skip_serializing_if = "Option::is_none")]
pub id_mappings: Option<Box<models::IdMappings>>,
#[serde(rename = "kernel", skip_serializing_if = "Option::is_none")]
pub kernel: Option<String>,
#[serde(rename = "linkmode", skip_serializing_if = "Option::is_none")]
pub linkmode: Option<String>,
#[serde(rename = "logDriver", skip_serializing_if = "Option::is_none")]
pub log_driver: Option<String>,
#[serde(rename = "memFree", skip_serializing_if = "Option::is_none")]
pub mem_free: Option<i64>,
#[serde(rename = "memTotal", skip_serializing_if = "Option::is_none")]
pub mem_total: Option<i64>,
#[serde(rename = "networkBackend", skip_serializing_if = "Option::is_none")]
pub network_backend: Option<String>,
#[serde(rename = "networkBackendInfo", skip_serializing_if = "Option::is_none")]
pub network_backend_info: Option<Box<models::NetworkInfo>>,
#[serde(rename = "ociRuntime", skip_serializing_if = "Option::is_none")]
pub oci_runtime: Option<Box<models::OciRuntimeInfo>>,
#[serde(rename = "os", skip_serializing_if = "Option::is_none")]
pub os: Option<String>,
#[serde(rename = "pasta", skip_serializing_if = "Option::is_none")]
pub pasta: Option<Box<models::PastaInfo>>,
#[serde(rename = "remoteSocket", skip_serializing_if = "Option::is_none")]
pub remote_socket: Option<Box<models::RemoteSocket>>,
#[serde(rename = "rootlessNetworkCmd", skip_serializing_if = "Option::is_none")]
pub rootless_network_cmd: Option<String>,
#[serde(rename = "runtimeInfo", skip_serializing_if = "Option::is_none")]
pub runtime_info: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "security", skip_serializing_if = "Option::is_none")]
pub security: Option<Box<models::SecurityInfo>>,
#[serde(rename = "serviceIsRemote", skip_serializing_if = "Option::is_none")]
pub service_is_remote: Option<bool>,
#[serde(rename = "slirp4netns", skip_serializing_if = "Option::is_none")]
pub slirp4netns: Option<Box<models::SlirpInfo>>,
#[serde(rename = "swapFree", skip_serializing_if = "Option::is_none")]
pub swap_free: Option<i64>,
#[serde(rename = "swapTotal", skip_serializing_if = "Option::is_none")]
pub swap_total: Option<i64>,
#[serde(rename = "uptime", skip_serializing_if = "Option::is_none")]
pub uptime: Option<String>,
#[serde(rename = "variant", skip_serializing_if = "Option::is_none")]
pub variant: Option<String>,
}
impl HostInfo {
pub fn new() -> HostInfo {
HostInfo {
arch: None,
buildah_version: None,
cgroup_controllers: None,
cgroup_manager: None,
cgroup_version: None,
conmon: None,
cpu_utilization: None,
cpus: None,
database_backend: None,
distribution: None,
event_logger: None,
free_locks: None,
hostname: None,
id_mappings: None,
kernel: None,
linkmode: None,
log_driver: None,
mem_free: None,
mem_total: None,
network_backend: None,
network_backend_info: None,
oci_runtime: None,
os: None,
pasta: None,
remote_socket: None,
rootless_network_cmd: None,
runtime_info: None,
security: None,
service_is_remote: None,
slirp4netns: None,
swap_free: None,
swap_total: None,
uptime: None,
variant: None,
}
}
}