Class: Fog::Kubevirt::Compute::Node

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

Class Method Summary collapse

Class Method Details

.parse(object) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/fog/kubevirt/compute/models/node.rb', line 16

def self.parse(object)
   = object[:metadata]
  status = object[:status]
  info = status[:nodeInfo]

  addresses = status[:addresses]
  hostname = addresses.detect { |address| address[:type] == 'Hostname' }[:address]
  ip = addresses.detect { |address| address[:type] == 'InternalIP' }[:address]
  {
    :namespace        => [:namespace],
    :name             => [:name],
    :resource_version => [:resourceVersion],
    :uid              => [:uid],
    :os_image         => info[:osImage],
    :operating_system => info[:operatingSystem],
    :kernel_version   => info[:kernelVersion],
    :hostname         => hostname,
    :ip_address       => ip
  }
end