class Fog::Kubevirt::Compute::Node

Public Class Methods

parse(object) click to toggle source
# File lib/fog/kubevirt/compute/models/node.rb, line 16
def self.parse(object)
  metadata = 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        => metadata[:namespace],
    :name             => metadata[:name],
    :resource_version => metadata[:resourceVersion],
    :uid              => metadata[:uid],
    :os_image         => info[:osImage],
    :operating_system => info[:operatingSystem],
    :kernel_version   => info[:kernelVersion],
    :hostname         => hostname,
    :ip_address       => ip
  }
end