class Gitlab::QA::Runner

rubocop:disable Metrics/AbcSize

def self.run(args)

def self.run(args)
  options = OptionParser.new do |opts|
    opts.banner = 'Usage: gitlab-qa [options] Scenario URL [[--] path] [rspec_options]'
    PASS_THROUGH_OPTS.each do |opt|
      opts.on(*opt)
    end
    opts.on_tail('-v', '--version', 'Show the version') do
      require 'gitlab/qa/version'
      puts "#{$PROGRAM_NAME} : #{VERSION}"
      exit
    end
    opts.on_tail('-h', '--help', 'Show the usage') do
      puts opts
      exit
    end
    opts.parse(args)
  end
  if args.size >= 1
    Scenario
      .const_get(args.shift)
      .perform(*args)
  else
    puts options
    exit 1
  end
end