Class: OvirtSDK4::AffinityGroupHostsService

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

#add(host, opts = {}) ⇒ Host

Adds a host to the affinity group.

For example, to add the host 789 to the affinity group 456 of cluster 123, send a request like this:

POST /ovirt-engine/api/clusters/123/affinitygroups/456/hosts

With the following body:

<host id="789"/>

Parameters:

  • host (Host)

    The host to be added to the affinity group.

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

    Additional options.

Options Hash (opts):

  • :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:



1311
1312
1313
# File 'lib/ovirtsdk4/services.rb', line 1311

def add(host, opts = {})
  internal_add(host, Host, ADD, opts)
end

#host_service(id_or_name) ⇒ AffinityGroupHostService

Access the service that manages the host assignment to this affinity group by host id or name.

Parameters:

  • id_or_name (String)

    The identifier of the host.

Returns:



1357
1358
1359
# File 'lib/ovirtsdk4/services.rb', line 1357

def host_service(id_or_name)
  AffinityGroupHostService.new(self, id_or_name)
end

#list(opts = {}) ⇒ Array<Host>

List all hosts assigned to this affinity group.

The order of the returned hosts isn’t guaranteed.

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.

  • :max (Integer)

    Sets the maximum number of hosts to return. If not specified, all the hosts are returned.

  • :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:



1346
1347
1348
# File 'lib/ovirtsdk4/services.rb', line 1346

def list(opts = {})
  internal_get(LIST, 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.



1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
# File 'lib/ovirtsdk4/services.rb', line 1368

def service(path)
  if path.nil? || path == ''
    return self
  end
  index = path.index('/')
  if index.nil?
    return host_service(path)
  end
  return host_service(path[0..(index - 1)]).service(path[(index + 1)..-1])
end