Sha256: c4033ff33e4b765444aac1bbc7fc64479adc2473c27c476dee218ea6dc8307e0
Contents?: true
Size: 1.31 KB
Versions: 1
Compression:
Stored size: 1.31 KB
Contents
require 'erb' module VagrantMutate module Converter class Kvm < Converter def generate_metadata metadata = { 'provider' => @output_box.provider_name, } end def write_specific_files template_path = VagrantMutate.source_root.join('templates', 'kvm', 'box.xml.erb') template = File.read(template_path) uuid = nil gui = true disk_bus = 'virtio' image_type = @output_box.image_format disk = @output_box.image_name name = @input_box.name memory = @input_box.memory / 1024 # convert bytes to kib cpus = @input_box.cpus mac = @input_box.mac_address arch = @input_box.architecture qemu_bin = find_kvm File.open( File.join( @output_box.dir, 'box.xml'), 'w') do |f| f.write( ERB.new(template).result(binding) ) end end private def find_kvm qemu_bin_list = [ '/usr/bin/qemu-system-x86_64', '/usr/bin/qemu-system-i386', '/usr/bin/qemu-kvm', '/usr/bin/kvm' ] qemu_bin = qemu_bin_list.detect { |binary| File.exists? binary } unless qemu_bin raise Errors::QemuNotFound end return qemu_bin end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vagrant-mutate-0.1.4 | lib/vagrant-mutate/converter/kvm.rb |