Class: Fog::Kubevirt::Compute::Vminstances

Inherits:
Collection
  • Object
show all
Defined in:
lib/fog/kubevirt/compute/models/vminstances.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#kindObject (readonly)

Returns the value of attribute kind.



8
9
10
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 8

def kind
  @kind
end

#resource_versionObject (readonly)

Returns the value of attribute resource_version.



8
9
10
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 8

def resource_version
  @resource_version
end

Instance Method Details

#all(filters = {}) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 12

def all(filters = {})
  begin
    vms = service.list_vminstances(filters)
  rescue ::Fog::Kubevirt::Errors::ClientError
    # we assume that we get 404
    vms = []
  end
  @kind = vms.kind
  @resource_version = vms.resource_version
  load vms
end

#destroy(name, namespace) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 28

def destroy(name, namespace)
  begin
    vm_instance = get(name)
  rescue ::Fog::Kubevirt::Errors::ClientError
    # the virtual machine instance doesn't exist
    vm_instance = nil
  end

  # delete vm
  service.delete_vm(name, namespace)

  # delete vm instance
  service.delete_vminstance(name) unless vm_instance.nil?
end

#get(name) ⇒ Object



24
25
26
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 24

def get(name)
  new service.get_vminstance(name)
end

#get_vnc_console_details(name, namespace) ⇒ Object



43
44
45
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 43

def get_vnc_console_details(name, namespace)
  service.get_vnc_console_details(name, namespace)
end