class Souschef::Testkitchen::Virtualbox

TestKitchen Virtualbox configuration

Attributes

config[RW]
cookbook[RW]

Public Class Methods

new(cookbook) click to toggle source
# File lib/souschef/testkitchen/virtualbox.rb, line 7
def initialize(cookbook)
  @cookbook = cookbook
  populate_configuration
end

Public Instance Methods

yaml() click to toggle source

Public - Return Testkitchecn Virtualbox configuration in YAML format

Returns String

# File lib/souschef/testkitchen/virtualbox.rb, line 15
def yaml
  @config.to_yaml
end

Private Instance Methods

define_driver() click to toggle source

Private - Define driver section

Returns Hash

# File lib/souschef/testkitchen/virtualbox.rb, line 34
def define_driver
  { 'name' => 'vagrant',
    'customize' => { 'memory' => 1024 } }
end
define_platforms() click to toggle source

Private - Define Platform

Returns Hash

# File lib/souschef/testkitchen/virtualbox.rb, line 50
def define_platforms
  [{ 'name' => 'centos-5.10',
     'driver_config' => { 'box' => 'centos-5.10-min-x86_64' } },
   { 'name' => 'centos-6.4',
     'driver_config' => { 'box' => 'centos-6.5-x86_64' } }]
end
define_provisioner() click to toggle source

Private - Define provisioner

Returns Hash

# File lib/souschef/testkitchen/virtualbox.rb, line 42
def define_provisioner
  { 'name' => 'chef_zero',
    'require_chef_omnibus' => 'latest' }
end
define_suits() click to toggle source

Private - Define suits

Returns Hash

# File lib/souschef/testkitchen/virtualbox.rb, line 60
def define_suits
  [{ 'name' => 'default',
     'run_list' => ["recipe[#{@cookbook}::default]"] }]
end
populate_configuration() click to toggle source

Private - Populate @config

Returns nil

# File lib/souschef/testkitchen/virtualbox.rb, line 24
def populate_configuration
  @config = { 'driver' => define_driver,
              'provisioner' => define_provisioner,
              'platforms' => define_platforms,
              'suites' => define_suits }
end