Cucumber Booster Config

Build Status Gem Version

Injects additional configuration for Cucumber so that it outputs JSON suitable for auto-parallelism without affecting stdout.

Installation

Add this line to your application's Gemfile:

gem "semaphore_cucumber_booster_config"

Usage from the CLI

$ cucumber-booster-config help inject
Usage:
  cucumber-booster-config inject PATH

  Options:
    [--dry-run], [--no-dry-run]

inject Semaphore's Cucumber configuration in project PATH

If you use the --dry-run option, output will look like this:

$ cucumber-booster-config inject . --dry-run
Running in .
Found Cucumber profile file: ./cucumber.yml
Content before:
---
default: --format pretty features
---
Inserting Semaphore configuration at the top
Appending Semaphore profile to default profile
Content after:
---
semaphoreci: --format json --out=features_report.json
default: --format pretty features --profile semaphoreci
---

Usage from other scripts

You can invoke the injector script programaticaly too:

current_path = Dir.pwd
output_report_path = "/tmp/cucumber_report.json"

CucumberBoosterConfig::Injection.new(current_path, output_report_path).run

Development

After checking out the repo, run bin/setup to install dependencies. Then, run bundle exec rspec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install.

How to release a new version

Bump version number in lib/cucumber_booster_config/version.rb, commit and push your changes.

Semaphore is currently configured to push new versions to Rubygems. If version hasn't changed, Rubygems will simply ignore the update.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/renderedtext/cucumber_booster_config.