Class: OvirtSDK4::TemplateService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#cdroms_service ⇒ TemplateCdromsService
Returns a reference to the service that manages the CDROMs that are associated with the template.
-
#disk_attachments_service ⇒ TemplateDiskAttachmentsService
Reference to the service that manages a specific disk attachment of the template.
-
#export(opts = {}) ⇒ Object
Exports a template to the data center export domain.
-
#get(opts = {}) ⇒ Template
Returns the information about this template or template version.
-
#graphics_consoles_service ⇒ TemplateGraphicsConsolesService
Returns a reference to the service that manages the graphical consoles that are associated with the template.
-
#nics_service ⇒ TemplateNicsService
Returns a reference to the service that manages the NICs that are associated with the template.
-
#permissions_service ⇒ AssignedPermissionsService
Returns a reference to the service that manages the permissions that are associated with the template.
-
#remove(opts = {}) ⇒ Object
Removes a virtual machine template.
-
#service(path) ⇒ Service
Locates the service corresponding to the given path.
-
#tags_service ⇒ AssignedTagsService
Returns a reference to the service that manages the tags that are associated with the template.
-
#update(template, opts = {}) ⇒ Template
Updates the template.
-
#watchdogs_service ⇒ TemplateWatchdogsService
Returns a reference to the service that manages the watchdogs that are associated with the template.
Methods inherited from Service
Instance Method Details
#cdroms_service ⇒ TemplateCdromsService
Returns a reference to the service that manages the CDROMs that are associated with the template.
25638 25639 25640 |
# File 'lib/ovirtsdk4/services.rb', line 25638 def cdroms_service @cdroms_service ||= TemplateCdromsService.new(self, 'cdroms') end |
#disk_attachments_service ⇒ TemplateDiskAttachmentsService
Reference to the service that manages a specific disk attachment of the template.
25648 25649 25650 |
# File 'lib/ovirtsdk4/services.rb', line 25648 def @disk_attachments_service ||= TemplateDiskAttachmentsService.new(self, 'diskattachments') end |
#export(opts = {}) ⇒ Object
Exports a template to the data center export domain.
For example, the operation can be facilitated using the following request:
POST /ovirt-engine/api/templates/123/export
With a request body like this:
<action>
<storage_domain id="456"/>
<exclusive>true<exclusive/>
</action>
25507 25508 25509 |
# File 'lib/ovirtsdk4/services.rb', line 25507 def export(opts = {}) internal_action(:export, nil, EXPORT, opts) end |
#get(opts = {}) ⇒ Template
Returns the information about this template or template version.
25539 25540 25541 |
# File 'lib/ovirtsdk4/services.rb', line 25539 def get(opts = {}) internal_get(GET, opts) end |
#graphics_consoles_service ⇒ TemplateGraphicsConsolesService
Returns a reference to the service that manages the graphical consoles that are associated with the template.
25657 25658 25659 |
# File 'lib/ovirtsdk4/services.rb', line 25657 def graphics_consoles_service @graphics_consoles_service ||= TemplateGraphicsConsolesService.new(self, 'graphicsconsoles') end |
#nics_service ⇒ TemplateNicsService
Returns a reference to the service that manages the NICs that are associated with the template.
25666 25667 25668 |
# File 'lib/ovirtsdk4/services.rb', line 25666 def nics_service @nics_service ||= TemplateNicsService.new(self, 'nics') end |
#permissions_service ⇒ AssignedPermissionsService
Returns a reference to the service that manages the permissions that are associated with the template.
25675 25676 25677 |
# File 'lib/ovirtsdk4/services.rb', line 25675 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#remove(opts = {}) ⇒ Object
Removes a virtual machine template.
DELETE /ovirt-engine/api/templates/123
25569 25570 25571 |
# File 'lib/ovirtsdk4/services.rb', line 25569 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
25704 25705 25706 25707 25708 25709 25710 25711 25712 25713 25714 25715 25716 25717 25718 25719 25720 25721 25722 25723 25724 25725 25726 25727 25728 25729 25730 25731 25732 25733 25734 25735 25736 25737 25738 25739 25740 25741 25742 25743 25744 25745 25746 25747 25748 25749 25750 25751 |
# File 'lib/ovirtsdk4/services.rb', line 25704 def service(path) if path.nil? || path == '' return self end if path == 'cdroms' return cdroms_service end if path.start_with?('cdroms/') return cdroms_service.service(path[7..-1]) end if path == 'diskattachments' return end if path.start_with?('diskattachments/') return .service(path[16..-1]) 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 == 'permissions' return end if path.start_with?('permissions/') return .service(path[12..-1]) end if path == 'tags' return end if path.start_with?('tags/') return .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 |
#tags_service ⇒ AssignedTagsService
Returns a reference to the service that manages the tags that are associated with the template.
25684 25685 25686 |
# File 'lib/ovirtsdk4/services.rb', line 25684 def @tags_service ||= AssignedTagsService.new(self, 'tags') end |
#update(template, opts = {}) ⇒ Template
Updates the template.
The name
, description
, type
, memory
, cpu
, topology
, os
, high_availability
, display
,
stateless
, usb
and timezone
elements can be updated after a template has been created.
For example, to update a template to so that it has 1 GiB of memory send a request like this:
PUT /ovirt-engine/api/templates/123
With the following request body:
<template>
<memory>1073741824</memory>
</template>
The version_name
name attribute is the only one that can be updated within the version
attribute used for
template versions:
<template>
<version>
<version_name>mytemplate_2</version_name>
</version>
</template>
25629 25630 25631 |
# File 'lib/ovirtsdk4/services.rb', line 25629 def update(template, opts = {}) internal_update(template, Template, UPDATE, opts) end |
#watchdogs_service ⇒ TemplateWatchdogsService
Returns a reference to the service that manages the watchdogs that are associated with the template.
25693 25694 25695 |
# File 'lib/ovirtsdk4/services.rb', line 25693 def watchdogs_service @watchdogs_service ||= TemplateWatchdogsService.new(self, 'watchdogs') end |