Add this line to your application's Gemfile:
gem 'ci-queue'
And then execute:
$ bundle
Or install it yourself as:
$ gem install ci-queue
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.
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
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
Because of how ci-queue
execute the examples, before(:all)
and after(:all)
hooks are not supported. rspec-queue
will explicitly reject them.