module CI::Queue

Constants

DEV_SCRIPTS_ROOT
RELEASE_SCRIPTS_ROOT
VERSION

Attributes

requeueable[RW]
shuffler[RW]

Public Instance Methods

from_uri(url, config) click to toggle source
# File lib/ci/queue.rb, line 39
def from_uri(url, config)
  uri = URI(url)
  implementation = case uri.scheme
  when 'list'
    Static
  when 'file', nil
    File
  when 'redis'
    require 'ci/queue/redis'
    Redis
  else
    raise ArgumentError, "Don't know how to handle #{uri.scheme} URLs"
  end
  implementation.from_uri(uri, config)
end
requeueable?(test_result) click to toggle source
# File lib/ci/queue.rb, line 27
def requeueable?(test_result)
  requeueable.nil? || requeueable.call(test_result)
end
shuffle(tests, random) click to toggle source
# File lib/ci/queue.rb, line 31
def shuffle(tests, random)
  if shuffler
    shuffler.call(tests, random)
  else
    tests.sort.shuffle(random: random)
  end
end