class Hive::DiagnosticRunner
Attributes
diagnostics[RW]
options[RW]
Public Class Methods
new(options, diagnostics_config, platform, hive_mind=nil)
click to toggle source
# File lib/hive/diagnostic_runner.rb, line 5 def initialize(options, diagnostics_config, platform, hive_mind=nil) @options = options @platform = platform @hive_mind = hive_mind @diagnostics = self.initialize_diagnostics(diagnostics_config[@platform]) if diagnostics_config.has_key?(@platform) end
Public Instance Methods
initialize_diagnostics(diagnostics_config)
click to toggle source
# File lib/hive/diagnostic_runner.rb, line 12 def initialize_diagnostics(diagnostics_config) if diagnostics_config @diagnostics = diagnostics_config.collect do |component, config| Hive.logger.info("Initializing #{component.capitalize} component for #{@platform.capitalize} diagnostic") require "hive/diagnostic/#{@platform}/#{component}" Object.const_get('Hive').const_get('Diagnostic').const_get(@platform.capitalize).const_get(component.capitalize).new(config, @options, @hive_mind) end else Hive.logger.info("No diagnostic specified for #{@platform}") end end
run()
click to toggle source
# File lib/hive/diagnostic_runner.rb, line 24 def run results = @diagnostics.collect do |diagnostic| diagnostic.run end failures = results.select { |r| r.failed? } failures.count == 0 end