Class: PackerFiles::Ubuntu::Server
- Inherits:
-
Debian::Server
- Object
- PackerFiles::Utils::TypeAccessor
- Builder
- Debian::Server
- PackerFiles::Ubuntu::Server
- Defined in:
- lib/PackerFiles/OS/Ubuntu/Server.rb
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Builder
Instance Method Summary collapse
-
#boot_command ⇒ Object
Boot Command Override.
-
#cd_image_hook ⇒ Object
Hook function called before normalizing CD Image.
-
#guest_os_type ⇒ Object
Guest OS Type override.
-
#initialize ⇒ Server
constructor
Constructor.
-
#preseed_file ⇒ Object
Name of the preseed file.
-
#preseed_write_hook(objects) ⇒ Object
Hook for writing into preseed file.
-
#vmware_guest_os_type ⇒ Object
VMWare Guest OS Type override.
Methods inherited from Debian::Server
#disable_root_for_user, #enable_root_for_user, #generate_hook, #kvm_converter_hook, preseed_accessors, #run_command_as_root, #shutdown_command, #vbox_converter_hook, #vmware_converter_hook, #vmware_guest_os_flavor
Methods inherited from Builder
#Generate, #http_dir, #name, #packer_json_file, versions
Methods inherited from PackerFiles::Utils::TypeAccessor
proc_from, type_accessor, type_accessors
Constructor Details
#initialize ⇒ Server
Constructor. Yield self for further initialization
14 15 16 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 14 def initialize super end |
Instance Method Details
#boot_command ⇒ Object
Boot Command Override
57 58 59 60 61 62 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 57 def boot_command file = PackerFiles.DirPath('Ubuntu/Templates/boot_command_erb.rb') hash = { 'obj' => self, 'network' => self.Network } value = PackerFiles.evaluate_erb(file.first, hash) value.split("\n") end |
#cd_image_hook ⇒ Object
Hook function called before normalizing CD Image
19 20 21 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 19 def cd_image_hook self.CDImage.impl = Ubuntu::CD.new end |
#guest_os_type ⇒ Object
Guest OS Type override
65 66 67 68 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 65 def guest_os_type return "Ubuntu_64" if (self.CDImage.arch == "amd64") return "Ubuntu" end |
#preseed_file ⇒ Object
Name of the preseed file
49 50 51 52 53 54 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 49 def preseed_file rel = self.CDImage.release arch = self.CDImage.arch name = "preseed-ubuntu-server-#{rel}-#{arch}.cfg" File.join(http_dir, name) end |
#preseed_write_hook(objects) ⇒ Object
Hook for writing into preseed file.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 24 def preseed_write_hook(objects) # Preseed file by evaluating templates @ Debian folder. preseed = Debian::Preseed.new(preseed_file) # Convert objects into Preseed configuration. objects.each do |obj| if obj.is_a? Debian::Apt preseed.convert obj, 'Ubuntu/Templates' else preseed.convert obj, 'Debian/Templates' end end # Generate fastest debian mirrors preseed.eval_file 'Debian/Templates/Mirrors_erb.rb', {'obj' => Ubuntu::Mirrors.new} # Return the preseed object for further customization # by derived classes. return preseed end |
#vmware_guest_os_type ⇒ Object
VMWare Guest OS Type override
71 72 73 74 |
# File 'lib/PackerFiles/OS/Ubuntu/Server.rb', line 71 def vmware_guest_os_type return "ubuntu-64" if (self.CDImage.arch == "amd64") return "ubuntu" end |