use std::convert::TryFrom; use virt::{connect::Connect, domain::Domain;}; use crate::errors::Error; /** * Represents a virtual machine, that's active on some server */ pub struct VirtualMachine { /// The assigned name of the VM pub name: String, /// The network address of the physical machine that's hosting this machine pub host_server: String, /// Whether or not the VM is active pub is_active: bool, /// The libvirtd-assigned UUID pub uuid: String, /// The network address of the VM pub addr: Option, /// How much RAM (in MB) is assigned to the VM pub assigned_mem_mb: u64, /// How many vCPUs are assigned to the VM pub assigned_cpus: u64, } impl TryFrom for VirtualMachine { type Error = Error; fn try_from(d: Domain) -> Result {