# File lib/miga/cli/action/add_result.rb, line 7 def parse_cli cli.defaults = { force: false, stdin_versions: false } cli.parse do |opt| cli.opt_object(opt, [:project, :dataset_opt, :result]) opt.on( '-f', '--force', 'Force re-indexing of the result even if it\s already registered' ) { |v| cli[:force] = v } opt.on( '--stdin-versions', 'Read Software versions from STDIN' ) { |v| cli[:stdin_versions] = v } end end
# File lib/miga/cli/action/add_result.rb, line 22 def perform cli.ensure_par(result: '-r') obj = cli.load_project_or_dataset cli.say "Registering result: #{cli[:result]}" r = obj.add_result(cli[:result], true, force: cli[:force]) raise 'Cannot add result, incomplete expected files' if r.nil? # Add Software version data if cli[:stdin_versions] versions = {} sw = nil $stdin.each do |ln| ln = ln.chomp.strip if ln =~ /^=> (.*)/ sw = $1 versions[sw] = '' else versions[sw] += ln end end r.add_versions(versions) r.save end end