class ZSpec::CLI

Public Instance Methods

connected() click to toggle source
# File lib/zspec/cli.rb, line 25
def connected
  redis.connected?
end
present() click to toggle source
# File lib/zspec/cli.rb, line 12
def present
  failed = presenter.poll_results
  queue.cleanup
  tracker.cleanup
  exit(1) if failed
end
queue_specs(*args) click to toggle source
# File lib/zspec/cli.rb, line 7
def queue_specs(*args)
  scheduler.schedule(args)
end
work() click to toggle source
# File lib/zspec/cli.rb, line 20
def work
  worker.work
end

Private Instance Methods

build_number() click to toggle source
# File lib/zspec/cli.rb, line 89
def build_number
  ENV["ZSPEC_BUILD_NUMBER"]
end
build_prefix() click to toggle source
# File lib/zspec/cli.rb, line 77
def build_prefix
  "#{build_number}:queue"
end
hostname() click to toggle source
# File lib/zspec/cli.rb, line 65
def hostname
  ENV["HOSTNAME"]
end
presenter() click to toggle source
# File lib/zspec/cli.rb, line 31
def presenter
  @presenter ||= ZSpec::Presenter.new(
    queue: queue,
    tracker: tracker,
    display_count: presenter_display_count,
    truncate_length: presenter_truncate_length
  )
end
presenter_display_count() click to toggle source
# File lib/zspec/cli.rb, line 101
def presenter_display_count
  ENV["ZSPEC_PRESENTER_DISPLAY_COUNT"] || 25
end
presenter_truncate_length() click to toggle source
# File lib/zspec/cli.rb, line 105
def presenter_truncate_length
  ENV["ZSPEC_PRESENTER_TRUNCATE_LENGTH"] || 2_000
end
queue() click to toggle source
# File lib/zspec/cli.rb, line 47
def queue
  @queue ||= ZSpec::Queue.new(
    sink: redis,
    build_prefix: build_prefix,
    timeout: queue_timeout,
    retries: queue_retries
  )
end
queue_retries() click to toggle source
# File lib/zspec/cli.rb, line 97
def queue_retries
  ENV["ZSPEC_QUEUE_RETRIES"] || 0
end
queue_timeout() click to toggle source
# File lib/zspec/cli.rb, line 93
def queue_timeout
  ENV["ZSPEC_QUEUE_TIMEOUT"] || 420
end
redis() click to toggle source
# File lib/zspec/cli.rb, line 73
def redis
  @redis ||= Redis.new(host: redis_host, port: redis_port)
end
redis_host() click to toggle source
# File lib/zspec/cli.rb, line 81
def redis_host
  ENV["ZSPEC_REDIS_HOST"]
end
redis_port() click to toggle source
# File lib/zspec/cli.rb, line 85
def redis_port
  ENV["ZSPEC_REDIS_PORT"]
end
scheduler() click to toggle source
# File lib/zspec/cli.rb, line 69
def scheduler
  @scheduler ||= ZSpec::Scheduler.new(queue: queue, tracker: tracker)
end
tracker() click to toggle source
# File lib/zspec/cli.rb, line 56
def tracker
  @tracker ||= ZSpec::Tracker.new(
    build_prefix: build_prefix,
    threshold: tracker_threshold,
    hostname: hostname,
    sink: redis
  )
end
tracker_threshold() click to toggle source
# File lib/zspec/cli.rb, line 109
def tracker_threshold
  ENV["ZSPEC_TRACKER_THRESHOLD"] || 60 * 60 * 24 * 14
end
worker() click to toggle source
# File lib/zspec/cli.rb, line 40
def worker
  @worker ||= ZSpec::Worker.new(
    queue: queue,
    tracker: tracker
  )
end