Skip to content

Latest commit

 

History

History
70 lines (43 loc) · 1.54 KB

README.md

File metadata and controls

70 lines (43 loc) · 1.54 KB

Installation

Add this line to your application's Gemfile:

gem 'ci-queue'

And then execute:

$ bundle

Or install it yourself as:

$ gem install ci-queue

Usage

Supported CI providers

ci-queue automatically infers most of its configuration if ran on one of the following CI providers:

  • Buildkite
  • CircleCI
  • Travis
  • Heroku CI
  • Semaphore 2

If you are using another CI system, please refer to the command usage message.

Minitest

Assuming you use one of the supported CI providers, the command can be as simple as:

minitest-queue --queue redis://example.com run -Itest test/**/*_test.rb

Additionally you can configure the requeue settings (see main README) with --max-requeues and --requeue-tolerance.

If you'd like to centralize the error reporting you can do so with:

minitest-queue --queue redis://example.com --timeout 600 report

The runner also comes with a tool to investigate leaky tests:

minitest-queue --queue path/to/test_order.log --failing-test 'SomeTest#test_something' bisect -Itest test/**/*_test.rb

RSpec

Assuming you use one of the supported CI providers, the command can be as simple as:

rspec-queue --queue redis://example.com

If you'd like to centralize the error reporting you can do so with:

rspec-queue --queue redis://example.com --timeout 600 --report

Limitations

Because of how ci-queue execute the examples, before(:all) and after(:all) hooks are not supported. rspec-queue will explicitly reject them.