lib/outliers/cli/process.rb in outliers-0.2.0 vs lib/outliers/cli/process.rb in outliers-0.3.0
- old
+ new
@@ -1,21 +1,26 @@
module Outliers
module CLI
class Process
def process
- @options = {}
+ @options = { threads: 1 }
option_parser.parse!
Outliers.config_path @options[:directory]
@logger = Outliers.logger
@run = Run.new
+ if @options[:threads] > 1
+ @run.threaded = true
+ @run.thread_count = @options[:threads]
+ end
+
begin
@run.credentials = Credentials.load_from_file "#{ENV['HOME']}/.outliers.yml"
- @run.process_evaluations_in_config_folder
+ @run.process_evaluations_in_dir
rescue Outliers::Exceptions::Base => e
@logger.error e.message
exit 1
end
@@ -24,11 +29,11 @@
@logger.info "Evaluations completed."
@run.failed.each do |f|
@logger.info "Evaluation '#{f.evaluation}' verification '#{f.verification}' of '#{f.resource}' failed."
- @logger.debug "Failing resource IDs '#{f.failing_resources.map{|r| r.id}.join(', ')}'"
+ @logger.info "Failing resource IDs '#{f.failing_resources.map{|r| r.id}.join(', ')}'"
end
@logger.info "(#{failed} evaluations failed, #{passed} evaluations passed.)"
exit 1 unless failed.zero?
@@ -45,9 +50,13 @@
private
def option_parser
OptionParser.new do |opts|
opts.banner = "Usage: outliers process [options]"
+
+ opts.on("-t", "--threads [THREADS]", "Maximum number of evaluations threads to run concurrently (Default: 1).") do |o|
+ @options[:threads] = o.to_i
+ end
opts.on("-d", "--directory [DIRECTORY]", "Directory containing evaluations to load.") do |o|
@options[:directory] = o
end
end