Class: OvirtSDK4::InstanceTypeService

Inherits:
Service
  • Object
show all
Defined in:
lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb

Instance Method Summary collapse

Methods inherited from Service

#inspect, #to_s

Instance Method Details

#get(opts = {}) ⇒ InstanceType

Get a specific instance type and it’s attributes.

GET /ovirt-engine/api/instancetypes/123

Parameters:

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :follow (String)

    Indicates which inner links should be followed. The objects referenced by these links will be fetched as part of the current request. See here for details.

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.

Returns:


13501
13502
13503
# File 'lib/ovirtsdk4/services.rb', line 13501

def get(opts = {})
  internal_get(GET, opts)
end

#graphics_consoles_serviceInstanceTypeGraphicsConsolesService

Reference to the service that manages the graphic consoles that are attached to this instance type.

Returns:


13601
13602
13603
# File 'lib/ovirtsdk4/services.rb', line 13601

def graphics_consoles_service
  @graphics_consoles_service ||= InstanceTypeGraphicsConsolesService.new(self, 'graphicsconsoles')
end

#nics_serviceInstanceTypeNicsService

Reference to the service that manages the NICs that are attached to this instance type.

Returns:


13610
13611
13612
# File 'lib/ovirtsdk4/services.rb', line 13610

def nics_service
  @nics_service ||= InstanceTypeNicsService.new(self, 'nics')
end

#remove(opts = {}) ⇒ Object

Removes a specific instance type from the system.

If a virtual machine was created using an instance type X after removal of the instance type the virtual machine’s instance type will be set to custom.

DELETE /ovirt-engine/api/instancetypes/123

Parameters:

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :async (Boolean)

    Indicates if the remove should be performed asynchronously.

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.


13534
13535
13536
# File 'lib/ovirtsdk4/services.rb', line 13534

def remove(opts = {})
  internal_remove(REMOVE, opts)
end

#service(path) ⇒ Service

Locates the service corresponding to the given path.

Parameters:

  • path (String)

    The path of the service.

Returns:

  • (Service)

    A reference to the service.

Raises:


13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
# File 'lib/ovirtsdk4/services.rb', line 13630

def service(path)
  if path.nil? || path == ''
    return self
  end
  if path == 'graphicsconsoles'
    return graphics_consoles_service
  end
  if path.start_with?('graphicsconsoles/')
    return graphics_consoles_service.service(path[17..-1])
  end
  if path == 'nics'
    return nics_service
  end
  if path.start_with?('nics/')
    return nics_service.service(path[5..-1])
  end
  if path == 'watchdogs'
    return watchdogs_service
  end
  if path.start_with?('watchdogs/')
    return watchdogs_service.service(path[10..-1])
  end
  raise Error.new("The path \"#{path}\" doesn't correspond to any service")
end

#update(instance_type, opts = {}) ⇒ InstanceType

Update a specific instance type and it’s attributes.

All the attributes are editable after creation. If a virtual machine was created using an instance type X and some configuration in instance type X was updated, the virtual machine’s configuration will be updated automatically by the engine.

PUT /ovirt-engine/api/instancetypes/123

For example, to update the memory of instance type 123 to 1 GiB and set the cpu topology to 2 sockets and 1 core, send a request like this:

<instance_type>
  <memory>1073741824</memory>
  <cpu>
    <topology>
      <cores>1</cores>
      <sockets>2</sockets>
      <threads>1</threads>
    </topology>
  </cpu>
</instance_type>

Parameters:

  • instance_type (InstanceType)

    The instance_type to update.

  • opts (Hash) (defaults to: {})

    Additional options.

Options Hash (opts):

  • :async (Boolean)

    Indicates if the update should be performed asynchronously.

  • :headers (Hash) — default: {}

    Additional HTTP headers.

  • :query (Hash) — default: {}

    Additional URL query parameters.

  • :timeout (Integer) — default: nil

    The timeout for this request, in seconds. If no value is explicitly given then the timeout set globally for the connection will be used.

  • :wait (Boolean) — default: true

    If true wait for the response.

Returns:


13591
13592
13593
# File 'lib/ovirtsdk4/services.rb', line 13591

def update(instance_type, opts = {})
  internal_update(instance_type, InstanceType, UPDATE, opts)
end

#watchdogs_serviceInstanceTypeWatchdogsService

Reference to the service that manages the watchdogs that are attached to this instance type.

Returns:


13619
13620
13621
# File 'lib/ovirtsdk4/services.rb', line 13619

def watchdogs_service
  @watchdogs_service ||= InstanceTypeWatchdogsService.new(self, 'watchdogs')
end