[][src]Struct ttstack::model::Vm

pub struct Vm {
    pub id: Id,
    pub name: Option<String>,
    pub engine: Arc<dyn VmEngine>,
    pub template: Arc<VmTemplate>,
    pub runtime_image: String,
    pub snapshots: HashMap<String, Snapshot>,
    pub latest_meta: Option<PathBuf>,
    pub state: VmState,
    pub resource: VmResource,
    pub addr: NetAddr,
}

Infomations about a VM instance.

Fields

id: Id

UUID of this VM

name: Option<String>

Name of the VM.

engine: Arc<dyn VmEngine>

Created by which engine.

template: Arc<VmTemplate>

Template of runtime_image, that is, the runtime image is created based on the template.

runtime_image: String

Runtime image of Vm.

Use 'String' instead of 'PathBuf', because runtime_image may not be a regular file path, such as ZFS stroage.

E.g. zroot/tt/VmId

snapshots: HashMap<String, Snapshot>

SnapshotName => Snapshot

latest_meta: Option<PathBuf>

The latest cached config-file.

state: VmState

Info about the state of VM.

resource: VmResource

Info about the resource of VM.

addr: NetAddr

Usually an 'IP' or a 'domain url'.

Only meaningful from the perspective of the client, to indicate how to connect to it from the client.

This is different from the meaning of the address in VmResource.

Auto Trait Implementations

impl !RefUnwindSafe for Vm[src]

impl !Send for Vm[src]

impl !Sync for Vm[src]

impl Unpin for Vm[src]

impl !UnwindSafe for Vm[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.