Puppet Plan: complyadm::preflight::processorcheck

Defined in:
plans/preflight/processorcheck.pp

Overview

A plan to check whether the target machine(s) meet(s) our processor requirements

Parameters:

  • config (Complyadm::Config) (defaults to: complyadm::config())

    Complyadm::Config config object from hiera

Returns:

  • Hash A hash with pass and/or fail messages



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'plans/preflight/processorcheck.pp', line 8

plan complyadm::preflight::processorcheck(
  Complyadm::Config $config = complyadm::config(),
) {
  $targets = $config['all_targets']

  $required_processors_count = 4

  $results = $targets.reduce({ passed => [], failed => [] }) | $memo, $target| {
    $facts_from_target = $target.facts()
    $found_processors_count = $facts_from_target['processors']['count']

    if($found_processors_count < $required_processors_count) {
      $failed = $memo['failed'] << "${target} : found ${found_processors_count} CPUs"
      $memo + { 'failed' => $failed }
    } else {
      $passed = $memo['passed'] << "${target} : found ${found_processors_count} CPUs"
      $memo + { 'passed' => $passed }
    }
  }

  return $results
}