Skip to content
This repository has been archived by the owner on May 21, 2019. It is now read-only.

Contributing

aslakhellesoy edited this page Sep 13, 2010 · 10 revisions

The rules for contributing are the same as for Cucumber.

Building everything

You need maven. After you have cloned the cuke4duke repo onto your local machine, you’ll also need a fresh clone of cucumber somewhere else on your machine. This is because cuke4duke master is always aligned with cucumber master, and things might break if you use earler released cucumber gems.

Once you have cloned both repositories, run the following command from cuke4duke’s root folder:

mvn clean install -P examples -Dcucumber.installGems=true -Dcucumber.bin=/full/path/to/cucumber/bin/cucumber

(The path to your cucumber script must point to the source of a cucumber codebase, which should be the most recent from Git, and not to an installed cucumber such as /usr/bin/cucumber).

That should build all the code and run all tests and examples. It’s important to note that this will not use the cucumber gem declared in the POMs, but instead use the cucumber you specify with -Dcucumber.bin.

This way, if you need to change cucumber to make something work in cuke4duke, you won’t have to build or install any gems.

Speeding things up

When you have run with -Dcucumber.installGems=true once, all of the gems that cucumber relies upon will be installed, so you can remove this JVM system property in subsequent builds. That will shave some time off your builds because nothing needs to be downloaded. At this point you can also speed up Maven by putting it offline with -o.

Clone this wiki locally