Class | BoxGrinder::VirtualBoxPlugin |
In: |
lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb
lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb |
Parent: | BasePlugin |
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 26 26: def after_init 27: register_deliverable(:disk => "#{@appliance_config.name}.vmdk") 28: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 26 26: def after_init 27: register_deliverable(:disk => "#{@appliance_config.name}.vmdk") 28: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 49 49: def build_virtualbox 50: @log.debug "Building VirtualBox image." 51: 52: @log.debug "Using qemu-img to convert the image..." 53: @image_helper.convert_disk(@previous_deliverables.disk, :vmdk, @deliverables.disk) 54: @log.debug "Conversion done." 55: 56: @log.debug "VirtualBox image was built." 57: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 49 49: def build_virtualbox 50: @log.debug "Building VirtualBox image." 51: 52: @log.debug "Using qemu-img to convert the image..." 53: @image_helper.convert_disk(@previous_deliverables.disk, :vmdk, @deliverables.disk) 54: @log.debug "Conversion done." 55: 56: @log.debug "VirtualBox image was built." 57: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 65 65: def customize(guestfs_helper) 66: @log.debug "Executing post commands from appliance definition..." 67: @appliance_config.post['virtualbox'].each do |cmd| 68: guestfs_helper.sh(cmd, :arch => @appliance_config.hardware.arch) 69: end 70: @log.debug "Post commands from appliance definition file executed." 71: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 65 65: def customize(guestfs_helper) 66: @log.debug "Executing post commands from appliance definition..." 67: @appliance_config.post['virtualbox'].each do |cmd| 68: guestfs_helper.sh(cmd, :arch => @appliance_config.hardware.arch) 69: end 70: @log.debug "Post commands from appliance definition file executed." 71: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 30 30: def execute 31: @log.info "Converting image to VirtualBox format..." 32: 33: build_virtualbox 34: 35: if is_os_old? or !@appliance_config.post['virtualbox'].empty? 36: @image_helper.customize([@deliverables.disk]) do |guestfs, guestfs_helper| 37: recreate_kernel(guestfs) if is_os_old? 38: customize(guestfs_helper) unless @appliance_config.post['virtualbox'].nil? 39: end 40: end 41: 42: @log.info "Image converted to VirtualBox format." 43: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 30 30: def execute 31: @log.info "Converting image to VirtualBox format..." 32: 33: build_virtualbox 34: 35: if is_os_old? or !@appliance_config.post['virtualbox'].empty? 36: @image_helper.customize([@deliverables.disk]) do |guestfs, guestfs_helper| 37: recreate_kernel(guestfs) if is_os_old? 38: customize(guestfs_helper) unless @appliance_config.post['virtualbox'].nil? 39: end 40: end 41: 42: @log.info "Image converted to VirtualBox format." 43: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 45 45: def is_os_old? 46: (@appliance_config.os.name == 'centos' or @appliance_config.os.name == 'rhel') and @appliance_config.os.version == '5' 47: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 45 45: def is_os_old? 46: (@appliance_config.os.name == 'centos' or @appliance_config.os.name == 'rhel') and @appliance_config.os.version == '5' 47: end
# File lib/boxgrinder-build/plugins/platform/virtualbox/virtualbox-plugin.rb, line 59 59: def recreate_kernel(guestfs) 60: @log.info "Recreating kernel to include require modules..." 61: LinuxHelper.new(:log => @log).recreate_kernel_image(guestfs, ['ahci']) 62: @log.info "Kernel recreated." 63: end