module ILO_SDK::EthernetInterfaceHelper

Contains helper methods for EthernetInterface IPv4 actions

Public Instance Methods

get_ilo_ethernet_interface(manager_id: 1, ethernet_interface: 1) click to toggle source

Get all the Ethernet Interface settings @param manager_id [Integer, String] ID of the Manager @param ethernet_interface [Integer, String] ID of the EthernetInterface @raise [RuntimeError] if the request failed @return [Hash] EthernetInterface settings

# File lib/ilo-sdk/helpers/ethernet_interface_helper.rb, line 20
def get_ilo_ethernet_interface(manager_id: 1, ethernet_interface: 1)
  response_handler(rest_get("/redfish/v1/Managers/#{manager_id}/EthernetInterfaces/#{ethernet_interface}/"))
end
set_ilo_hostname(hostname:, domain_name: nil, manager_id: 1, ethernet_interface: 1) click to toggle source

Set iLO hostname and domain name @param hostname [String] iLO hostname @param domain_name [String] iLO domain name @param manager_id [Integer, String] ID of the Manager @param ethernet_interface [Integer, String] ID of the EthernetInterface @raise [RuntimeError] if the request failed @return true

# File lib/ilo-sdk/helpers/ethernet_interface_helper.rb, line 97
def set_ilo_hostname(hostname:, domain_name: nil, manager_id: 1, ethernet_interface: 1)
  new_action = { 'Oem' => { 'Hp' => { 'HostName' => hostname } } }
  new_action['Oem']['Hp'].merge!('DHCPv4' => {}, 'DHCPv6' => {}) if domain_name
  new_action['Oem']['Hp']['DHCPv4']['UseDomainName'] = false if domain_name
  new_action['Oem']['Hp']['DHCPv6']['UseDomainName'] = false if domain_name
  new_action['Oem']['Hp']['DomainName'] = domain_name if domain_name
  response = rest_patch("/redfish/v1/Managers/#{manager_id}/EthernetInterfaces/#{ethernet_interface}/", body: new_action)
  response_handler(response)
  true
end
set_ilo_ipv4_dhcp(manager_id: 1, ethernet_interface: 1) click to toggle source

Set EthernetInterface to obtain IPv4 settings from DHCP @param manager_id [Integer, String] ID of the Manager @param ethernet_interface [Integer, String] ID of the EthernetInterface @raise [RuntimeError] if the request failed @return true

# File lib/ilo-sdk/helpers/ethernet_interface_helper.rb, line 29
def set_ilo_ipv4_dhcp(manager_id: 1, ethernet_interface: 1)
  new_action = {
    'Oem' => {
      'Hp' => {
        'DHCPv4' => {
          'Enabled' => true,
          'UseDNSServers' => true,
          'UseDomainName' => true,
          'UseGateway' => true,
          'UseNTPServers' => true,
          'UseStaticRoutes' => true,
          'UseWINSServers' => true
        }
      }
    }
  }
  response = rest_patch("/redfish/v1/Managers/#{manager_id}/EthernetInterfaces/#{ethernet_interface}/", body: new_action)
  response_handler(response)
  true
end
set_ilo_ipv4_dns_servers(dns_servers:, manager_id: 1, ethernet_interface: 1) click to toggle source

Set EthernetInterface DNS servers @param dns_servers [Array] list of DNS servers @param manager_id [Integer, String] ID of the Manager @param ethernet_interface [Integer, String] ID of the EthernetInterface @raise [RuntimeError] if the request failed @return true

# File lib/ilo-sdk/helpers/ethernet_interface_helper.rb, line 76
def set_ilo_ipv4_dns_servers(dns_servers:, manager_id: 1, ethernet_interface: 1)
  new_action = {
    'Oem' => {
      'Hp' => {
        'DHCPv4' => { 'UseDNSServers' => false },
        'IPv4' => { 'DNSServers' => dns_servers }
      }
    }
  }
  response = rest_patch("/redfish/v1/Managers/#{manager_id}/EthernetInterfaces/#{ethernet_interface}/", body: new_action)
  response_handler(response)
  true
end
set_ilo_ipv4_static(ip:, netmask:, gateway: '0.0.0.0', manager_id: 1, ethernet_interface: 1) click to toggle source

Set EthernetInterface to static IPv4 address @param ip [String] IPv4 address @param netmask [String] IPv4 subnet mask @param gateway [String] IPv4 default gateway @param manager_id [Integer, String] ID of the Manager @param ethernet_interface [Integer, String] ID of the EthernetInterface @raise [RuntimeError] if the request failed @return true

# File lib/ilo-sdk/helpers/ethernet_interface_helper.rb, line 58
def set_ilo_ipv4_static(ip:, netmask:, gateway: '0.0.0.0', manager_id: 1, ethernet_interface: 1)
  new_action = {
    'Oem' => { 'Hp' => { 'DHCPv4' => { 'Enabled' => false } } },
    'IPv4Addresses' => [
      'Address' => ip, 'SubnetMask' => netmask, 'Gateway' => gateway
    ]
  }
  response = rest_patch("/redfish/v1/Managers/#{manager_id}/EthernetInterfaces/#{ethernet_interface}/", body: new_action)
  response_handler(response)
  true
end