Sha256: 90e7011a46c02739f4543627a577dad3fd84031fa65713e1f0f7c14ac137281e

Contents?: true

Size: 1003 Bytes

Versions: 3

Compression:

Stored size: 1003 Bytes

Contents

require 'beaker-hostgenerator/data'
require 'beaker-hostgenerator/hypervisor'
require 'deep_merge'

module BeakerHostGenerator
  module Hypervisor
    class Vagrant < BeakerHostGenerator::Hypervisor::Interface
      include BeakerHostGenerator::Data

      def generate_node(node_info, base_config, bhg_version)
        base_config['hypervisor'] = 'vagrant'

        if node_info['ostype'] =~ /^centos/
          base_config['box'] = node_info['ostype'].sub(/(\d)/, '/\1')
        elsif node_info['ostype'] =~ /^fedora/
          base_config['box'] = node_info['ostype'].sub(/(\d)/, '/\1') + 'cloud-base'
        else
          base_config['box'] = "generic/#{node_info['ostype']}"
        end

        # We don't use this by default
        base_config['synced_folder'] = 'disabled'

        platform = node_info['platform']
        platform_info = get_platform_info(bhg_version, platform, :vagrant)
        base_config.deep_merge! platform_info

        return base_config
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
beaker-hostgenerator-1.1.24 lib/beaker-hostgenerator/hypervisor/vagrant.rb
beaker-hostgenerator-1.1.23 lib/beaker-hostgenerator/hypervisor/vagrant.rb
beaker-hostgenerator-1.1.22 lib/beaker-hostgenerator/hypervisor/vagrant.rb