class PackerFiles::Core::Hypervisor
The Hypervisor
class just abstracts out various settings that are applicable on Hypervisors. It is upto the providers to ensure that the appropriate Packer variables are generated for these settings.
Attributes
Is ACPI enabled?
CPU count
CPU Execution Cap
Enable CPU Hot plug?
CPU Speed
Custom
object which can be used for whatever purpose it suits the caller
Guest memory balloon size
Should nested paging for guest be enabled
Should H/w Virtualization for Guest be enabled
Should PAE (Processor Address Extensions) enabled?
RAM Size
Should the guest run in unrestricted mode
Should EFI firmware be used instead of bios
Should Hypervisor
use large pages for this guest
Should 3d acceleration be enabled for Video
Video ram size
Public Class Methods
Documentation for this class
# File lib/PackerFiles/Core/Hypervisor.rb, line 63 def self.doc_file PackerFiles.DirPath('Core/example/Hypervisor.txt').first end
Constructor initializes some sane values for various parameters.
# File lib/PackerFiles/Core/Hypervisor.rb, line 68 def initialize @cpu_count = 1 @cpu_speed = '1GHz' @cpu_hot_plug = false @cpu_execution_cap = 100 @ram_size = '1GiB' @video_ram_size = '64MiB' @acpi_enabled = true @pae_enabled = true @hw_virt_enabled = true @use_large_pages = true @unrestricted_guest_mode = false @video_3d_acceleration = false @use_efi = false @guest_balloon_size = '0MiB' @custom = nil yield self if block_given? end
Public Instance Methods
The Custom
object is filled with whatever is the result of the block
# File lib/PackerFiles/Core/Hypervisor.rb, line 88 def Custom(&block) @custom = block.call(self) end