class Souschef::Testkitchen::Solusvm

Testkitchen Docker configuration

Attributes

config[RW]
cookbook[RW]

Public Class Methods

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

Public Instance Methods

yaml() click to toggle source

Public - Return YAML formatted data

Returns String

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

Private Instance Methods

define_centos_5() click to toggle source

Private - Define CentOS 5.10 platforms

Returns Hash

# File lib/souschef/testkitchen/solusvm.rb, line 57
def define_centos_5
  { 'name' => 'centos-5.10',
    'driver_config' => { 'template' => 'centos-5.10-x86_64-solus',
                         'plan' => 'VPS2',
                         'node' => 'chefsolushv',
                         'privileged' => 'true',
                         'type' => 'xen',
                         'platform' => 'centos',
                         'use_sudo' => 'false',
                         'username' => 'internal'   } }
end
define_centos_6() click to toggle source

Private - Define CentOS 6.4 platform

Returns Hash

# File lib/souschef/testkitchen/solusvm.rb, line 72
def define_centos_6
  { 'name' => 'centos-6-5',
    'driver_config' => { 'template' => 'centos-6.5-x86_64-solus',
                         'plan' => 'VPS2',
                         'node' => 'chefsolushv',
                         'privileged' => 'true',
                         'type' => 'xen',
                         'platform' => 'centos',
                         'use_sudo' => 'false',
                         'username' => 'internal'   } }
end
define_driver() click to toggle source

Private - Define driver section

Returns Hash

# File lib/souschef/testkitchen/solusvm.rb, line 34
def define_driver
  { 'name' => 'solusvm',
    'privileged' => 'true'
  }
end
define_platforms() click to toggle source

Private - Define platforms configuration

Returns Array

# File lib/souschef/testkitchen/solusvm.rb, line 50
def define_platforms
  [define_centos_5, define_centos_6, define_run_list]
end
define_provisioner() click to toggle source

Private - Define provisioner

Returns Hash

# File lib/souschef/testkitchen/solusvm.rb, line 43
def define_provisioner
  { 'name' => 'chef-zero', 'require_chef_omnibus' => 'latest' }
end
define_run_list() click to toggle source

Private - Define Runlist for platforms

Returs Hash

# File lib/souschef/testkitchen/solusvm.rb, line 87
def define_run_list
  { 'run_list' => 'nil' }
end
define_suits() click to toggle source

Private - Define suits

Returns Hash

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

Private - Populate @config

Returns nil

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