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
23
24
25
26
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 12

def all(filters = {})
  begin
    vms = service.list_vminstances(filters)

    @kind = vms.kind
    @resource_version = vms.resource_version
  rescue ::Fog::Kubevirt::Errors::ClientError
    # we assume that we get 404
    vms = []

    @kind = 'VirtualMachineInstance'
  end

  load vms
end

#destroy(name, namespace) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 32

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



28
29
30
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 28

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

#get_vnc_console_details(name, namespace) ⇒ Object



47
48
49
# File 'lib/fog/kubevirt/compute/models/vminstances.rb', line 47

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