Class: OvirtSDK4::VmPoolService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#allocate_vm(opts = {}) ⇒ Object
This operation allocates a virtual machine in the virtual machine pool.
-
#get(opts = {}) ⇒ VmPool
Get the virtual machine pool.
-
#permissions_service ⇒ AssignedPermissionsService
Reference to a service managing the virtual machine pool assigned permissions.
-
#remove(opts = {}) ⇒ Object
Removes a virtual machine pool.
-
#service(path) ⇒ Service
Locates the service corresponding to the given path.
-
#update(pool, opts = {}) ⇒ VmPool
Update the virtual machine pool.
Methods inherited from Service
Instance Method Details
#allocate_vm(opts = {}) ⇒ Object
This operation allocates a virtual machine in the virtual machine pool.
POST /ovirt-engine/api/vmpools/123/allocatevm
The allocate virtual machine action does not take any action specific parameters, so the request body should
contain an empty action
:
<action/>
31458 31459 31460 |
# File 'lib/ovirtsdk4/services.rb', line 31458 def allocate_vm(opts = {}) internal_action(:allocatevm, nil, ALLOCATE_VM, opts) end |
#get(opts = {}) ⇒ VmPool
Get the virtual machine pool.
GET /ovirt-engine/api/vmpools/123
You will get a XML response like that one:
<vm_pool id="123">
<actions>...</actions>
<name>MyVmPool</name>
<description>MyVmPool description</description>
<link href="/ovirt-engine/api/vmpools/123/permissions" rel="permissions"/>
<max_user_vms>1</max_user_vms>
<prestarted_vms>0</prestarted_vms>
<size>100</size>
<stateful>false</stateful>
<type>automatic</type>
<use_latest_template_version>false</use_latest_template_version>
<cluster id="123"/>
<template id="123"/>
<vm id="123">...</vm>
...
</vm_pool>
31516 31517 31518 |
# File 'lib/ovirtsdk4/services.rb', line 31516 def get(opts = {}) internal_get(GET, opts) end |
#permissions_service ⇒ AssignedPermissionsService
Reference to a service managing the virtual machine pool assigned permissions.
31604 31605 31606 |
# File 'lib/ovirtsdk4/services.rb', line 31604 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#remove(opts = {}) ⇒ Object
Removes a virtual machine pool.
DELETE /ovirt-engine/api/vmpools/123
31546 31547 31548 |
# File 'lib/ovirtsdk4/services.rb', line 31546 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
31615 31616 31617 31618 31619 31620 31621 31622 31623 31624 31625 31626 |
# File 'lib/ovirtsdk4/services.rb', line 31615 def service(path) if path.nil? || path == '' return self end if path == 'permissions' return end if path.start_with?('permissions/') return .service(path[12..-1]) end raise Error.new("The path \"#{path}\" doesn't correspond to any service") end |
#update(pool, opts = {}) ⇒ VmPool
Update the virtual machine pool.
PUT /ovirt-engine/api/vmpools/123
The name
, description
, size
, prestarted_vms
and max_user_vms
attributes can be updated after the virtual machine pool has been
created.
<vmpool>
<name>VM_Pool_B</name>
<description>Virtual Machine Pool B</description>
<size>3</size>
<prestarted_vms>1</size>
<max_user_vms>2</size>
</vmpool>
31595 31596 31597 |
# File 'lib/ovirtsdk4/services.rb', line 31595 def update(pool, opts = {}) internal_update(pool, VmPool, UPDATE, opts) end |