Class: Packer::Builder::Qemu

Inherits:
Packer::Builder show all
Defined in:
lib/packer/builders/qemu.rb

Constant Summary

Constants inherited from Packer::Builder

AMAZON_EBS, AMAZON_INSTANCE, DOCKER, NULL, QEMU, VALID_BUILDER_TYPES, VIRTUALBOX_ISO, VMWARE_ISO, VMWARE_VMX

Instance Attribute Summary

Attributes inherited from Packer::Builder

#communicators

Attributes inherited from DataObject

#data, #key_dependencies, #required

Instance Method Summary collapse

Methods inherited from Packer::Builder

#communicator, get_builder, #name, #ssh_bastion_host, #ssh_bastion_password, #ssh_bastion_private_key_file, #ssh_bastion_username, #ssh_disable_agent, #ssh_handshake_attempts, #ssh_host, #ssh_password, #ssh_port, #ssh_private_key_file, #ssh_pty, #ssh_timeout, #ssh_username, types, #winrm_host, #winrm_password, #winrm_port, #winrm_timeout, #winrm_username

Methods inherited from DataObject

#__add_array_of_array_of_strings, #__add_array_of_hashes, #__add_array_of_ints, #__add_array_of_strings, #__add_boolean, #__add_hash, #__add_integer, #__add_json, #__add_string, #__exclusive_key_error, #add_key_dependencies, #add_required, #deep_copy, #validate, #validate_key_dependencies, #validate_required

Constructor Details

#initializeQemu

Returns a new instance of Qemu.



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/packer/builders/qemu.rb', line 8

def initialize
  super
  self.data['type'] = QEMU
  self.add_required(
    'iso_checksum',
    'iso_checksum_type',
    'iso_url',
    'communicator'
  )
  self.communicators = %w(none ssh winrm)
end

Instance Method Details

#accelerator(accelerator) ⇒ Object



44
45
46
# File 'lib/packer/builders/qemu.rb', line 44

def accelerator(accelerator)
  self.__add_string('accelerator', accelerator)
end

#boot_command(commands) ⇒ Object



32
33
34
# File 'lib/packer/builders/qemu.rb', line 32

def boot_command(commands)
  self.__add_array_of_strings('boot_command', commands)
end

#boot_wait(time) ⇒ Object



36
37
38
# File 'lib/packer/builders/qemu.rb', line 36

def boot_wait(time)
  self.__add_string('boot_wait',time)
end

#disk_interface(disk_interface) ⇒ Object



64
65
66
# File 'lib/packer/builders/qemu.rb', line 64

def disk_interface(disk_interface)
  self.__add_string('disk_interface', disk_interface)
end

#disk_size(megabytes) ⇒ Object



40
41
42
# File 'lib/packer/builders/qemu.rb', line 40

def disk_size(megabytes)
  self.__add_integer('disk_size', megabytes)
end

#floppy_files(files) ⇒ Object



56
57
58
# File 'lib/packer/builders/qemu.rb', line 56

def floppy_files(files)
  self.__add_array_of_strings('floppy_files', files)
end

#format(format) ⇒ Object



48
49
50
# File 'lib/packer/builders/qemu.rb', line 48

def format(format)
  self.__add_string('format', format)
end

#headless(bool) ⇒ Object



68
69
70
# File 'lib/packer/builders/qemu.rb', line 68

def headless(bool)
  self.__add_boolean('headless', bool)
end

#http_directory(directory) ⇒ Object



72
73
74
# File 'lib/packer/builders/qemu.rb', line 72

def http_directory(directory)
  self.__add_string('http_directory', directory)
end

#http_port_max(port_number) ⇒ Object



80
81
82
# File 'lib/packer/builders/qemu.rb', line 80

def http_port_max(port_number)
  self.__add_integer('http_port_max', port_number)
end

#http_port_min(port_number) ⇒ Object



76
77
78
# File 'lib/packer/builders/qemu.rb', line 76

def http_port_min(port_number)
  self.__add_integer('http_port_min', port_number)
end

#iso_checksum(checksum) ⇒ Object



20
21
22
# File 'lib/packer/builders/qemu.rb', line 20

def iso_checksum(checksum)
  self.__add_string('iso_checksum', checksum)
end

#iso_checksum_type(type) ⇒ Object



24
25
26
# File 'lib/packer/builders/qemu.rb', line 24

def iso_checksum_type(type)
  self.__add_string('iso_checksum_type', type)
end

#iso_url(url) ⇒ Object



28
29
30
# File 'lib/packer/builders/qemu.rb', line 28

def iso_url(url)
  self.__add_string('iso_url', url, %w[iso_urls])
end

#net_device(net_device) ⇒ Object



52
53
54
# File 'lib/packer/builders/qemu.rb', line 52

def net_device(net_device)
  self.__add_string('net_device', net_device)
end

#output_directory(directory) ⇒ Object



84
85
86
# File 'lib/packer/builders/qemu.rb', line 84

def output_directory(directory)
  self.__add_string('output_directory', directory)
end

#qemu_binary(qemu_binary) ⇒ Object



60
61
62
# File 'lib/packer/builders/qemu.rb', line 60

def qemu_binary(qemu_binary)
  self.__add_string('qemu_binary', qemu_binary)
end

#qemuargs(array_of_commands) ⇒ Object



96
97
98
# File 'lib/packer/builders/qemu.rb', line 96

def qemuargs(array_of_commands)
  self.__add_array_of_array_of_strings('qemuargs', array_of_commands)
end

#shutdown_command(command) ⇒ Object



88
89
90
# File 'lib/packer/builders/qemu.rb', line 88

def shutdown_command(command)
  self.__add_string('shutdown_command', command)
end

#shutdown_timeout(time) ⇒ Object



92
93
94
# File 'lib/packer/builders/qemu.rb', line 92

def shutdown_timeout(time)
  self.__add_string('shutdown_timeout', time)
end

#vm_name(name) ⇒ Object



100
101
102
# File 'lib/packer/builders/qemu.rb', line 100

def vm_name(name)
  self.__add_string('vm_name', name)
end