Module: PuppetBox::Report
- Defined in:
- lib/puppetbox/report.rb
Class Method Summary collapse
-
.log_test_result_or_errors(logger, node_name, puppet_class, result) ⇒ Object
Print an individual test’s result or if it failed, it’s errors.
- .pretty_status(passed) ⇒ Object
- .print(result_set, stream = $stdout) ⇒ Object
Class Method Details
.log_test_result_or_errors(logger, node_name, puppet_class, result) ⇒ Object
Print an individual test’s result or if it failed, it’s errors.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/puppetbox/report.rb', line 28 def self.log_test_result_or_errors(logger, node_name, puppet_class, result) indent = " " tag = "#{indent}#{node_name} - #{puppet_class}" logger.info("#{tag}: #{pretty_status(result.passed?)}") if ! result.passed? # since we stop running on failure, the error messages will be in the # last element of the result.messages array (tada!) = result. if .empty? logger.error "#{tag} - no output available" else [-1].each { |line| logger.error "#{tag} - #{line}" } end end end |
.pretty_status(passed) ⇒ Object
4 5 6 |
# File 'lib/puppetbox/report.rb', line 4 def self.pretty_status(passed) passed ? 'OK'.green: 'FAILED'.red end |
.print(result_set, stream = $stdout) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/puppetbox/report.rb', line 8 def self.print(result_set, stream=$stdout) # print the report summary indent = " " stream.puts "\n\n\nSummary\n=======" result_set.results.each { |node, class_results| stream.puts node if class_results.class == String stream.puts "#{indent}#{class_results}" else class_results.each { |puppet_class, result| stream.puts "#{indent}#{puppet_class}: #{pretty_status(result.passed?)}" } end } stream.puts "\n\nOVERALL STATUS: #{pretty_status(result_set.passed?)}" end |