Class: OutputResults

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet-check/output_results.rb

Overview

class to handle outputting diagnostic results in desired format

Class Method Summary collapse

Class Method Details

.markup(settings) ⇒ Object

output the results as yaml or json



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/puppet-check/output_results.rb', line 25

def self.markup(settings)
  # generate output hash
  hash = {}
  hash['errors'] = PuppetCheck.settings[:error_files] unless PuppetCheck.settings[:error_files].empty?
  hash['warnings'] = PuppetCheck.settings[:warning_files] unless PuppetCheck.settings[:warning_files].empty?
  hash['clean'] = PuppetCheck.settings[:clean_files] unless PuppetCheck.settings[:clean_files].empty?
  hash['ignored'] = PuppetCheck.settings[:ignored_files] unless PuppetCheck.settings[:ignored_files].empty?

  # convert hash to markup language
  if settings[:output_format] == 'yaml'
    require 'yaml'
    puts Psych.dump(hash, indentation: 2)
  elsif settings[:output_format] == 'json'
    require 'json'
    puts JSON.pretty_generate(hash)
  else
    raise "puppet-check: Unsupported output format '#{settings[:output_format]}' was specified."
  end
end

.textObject

output the results as text



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/puppet-check/output_results.rb', line 6

def self.text
  unless PuppetCheck.settings[:error_files].empty?
    print "\033[31mThe following files have errors:\033[0m\n-- "
    puts PuppetCheck.settings[:error_files].join("\n\n-- ")
  end
  unless PuppetCheck.settings[:warning_files].empty?
    print "\n\033[33mThe following files have warnings:\033[0m\n-- "
    puts PuppetCheck.settings[:warning_files].join("\n\n-- ")
  end
  unless PuppetCheck.settings[:clean_files].empty?
    print "\n\033[32mThe following files have no errors or warnings:\033[0m\n-- "
    puts PuppetCheck.settings[:clean_files].join("\n-- ")
  end
  return if PuppetCheck.settings[:ignored_files].empty?
  print "\n\033[36mThe following files have unrecognized formats and therefore were not processed:\033[0m\n-- "
  puts PuppetCheck.settings[:ignored_files].join("\n-- ")
end