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/>
31656 31657 31658 |
# File 'lib/ovirtsdk4/services.rb', line 31656 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>
31714 31715 31716 |
# File 'lib/ovirtsdk4/services.rb', line 31714 def get(opts = {}) internal_get(GET, opts) end |
#permissions_service ⇒ AssignedPermissionsService
Reference to a service managing the virtual machine pool assigned permissions.
31802 31803 31804 |
# File 'lib/ovirtsdk4/services.rb', line 31802 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#remove(opts = {}) ⇒ Object
Removes a virtual machine pool.
DELETE /ovirt-engine/api/vmpools/123
31744 31745 31746 |
# File 'lib/ovirtsdk4/services.rb', line 31744 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
31813 31814 31815 31816 31817 31818 31819 31820 31821 31822 31823 31824 |
# File 'lib/ovirtsdk4/services.rb', line 31813 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>
31793 31794 31795 |
# File 'lib/ovirtsdk4/services.rb', line 31793 def update(pool, opts = {}) internal_update(pool, VmPool, UPDATE, opts) end |