Puppet Class: psick::virtualbox

Defined in:
manifests/virtualbox.pp

Overview

Parameters:

  • ensure (Psick::Ensure) (defaults to: 'present')
  • manage (Boolean) (defaults to: $::psick::manage)
  • module (String) (defaults to: 'psick')
  • no_noop (Boolean) (defaults to: false)
  • root_password (Optional[Psick::Password]) (defaults to: undef)
  • network_hash (Hash) (defaults to: {})
  • vm_hash (Hash) (defaults to: {})


3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'manifests/virtualbox.pp', line 3

class psick::virtualbox (

  Psick::Ensure   $ensure                   = 'present',
  Boolean         $manage                   = $::psick::manage,

  String                     $module = 'psick',
  Boolean         $no_noop                  = false,

  Optional[Psick::Password]  $root_password = undef,

  Hash                       $network_hash  = {},
  Hash                       $vm_hash    = {},
) {

  # We declare resources only if $manage = true
  if $manage {

    # If no_noop is set it's enforced, unless psick::noop_mode is
    if !$::psick::noop_mode and $no_noop {
      info('Forced no-noop mode in psick::grafana')
      noop(false)
    }

    # Intallation management
    case $module {
      'psick': {
        contain psick::virtualbox::tp
      }
      'tp_profile': {
        contain tp_profile::virtualbox
      }
      default: {
        contain $module
      }
    }

    $vm_hash.each |$k,$v| {
      psick::virtualbox::vm { $k:
        * => $v,
      }
    }
    $network_hash.each |$k,$v| {
      psick::virtualbox::network { $k:
        * => $v,
      }
    }
  }
}