Rudder is open to all kinds of contribution:
-
Bug reports and fixes
-
Documentation
-
Features ideas
-
New features
If you want to contribute, the best way to start is to come and chat with us on chat.rudder.io. You can also communicate by email using the rudder-dev mailing list.
Note
|
Large contributions on Rudder may require a CLA/CCLA. |
Just click on the "Edit page" button, and open a pull request directly from Github’s interface!
We maintain several Rudder major versions in separate branches.
-
branches/rudder/5.0
is Rudder 5.0, from which 5.0 minor release will be tagged -
master
is the next Rudder version, not branched yet
Note
|
Some tooling repositories only have a master branch.
|
All bug fixes should be done in the oldest relevant branch (i.e. affected and still maintained). Version status is visible on https://docs.rudder.io/version. Don’t hesitate to ask us on the chat room if you are unsure about which branch you should work on.
We have an internal CI tooling, that we are intend to integrate to Github pull requests status.
We do not use Github’s issue tracking but an external issue tracker hosted on https://issues.rudder.io.
Every change in one of the Rudder repositories must be linked to an issue in this tool, except for documentation fixes that can be contributed directly on Github.
To ease the use of a separate issue tracker and maintenance of several branches of Rudder, we have developed a dedicated tooling.
To download rudder-dev:
wget https://repository.rudder.io/tools/rudder-dev
It is a shell script you can put somewhere is your PATH. You can then update it with
rudder-dev update
(it will remind you to do so regularly).
At its first start, rudder-dev
will create its configuration script in ~/.rudder-dev
.
You need to edit it to provide your Gtihub and redmine token:
[default]
## Uncomment and set your own values
## To manage your tokens, click here https://github.com/settings/tokens
github_token =
## Redmine personal access token, (create one here http://www.rudder-project.org/redmine/my/account)
redmine_token =
The rtf
tool allows automated setup of multi-node environment using vagrant.
Follow the docs in the rudder-tests repo
to install and configure it.
It is also used for continuous integration and release testing.
Follow these instructions to setup a development’s environment with IntelliJ allowing you to test your changes.
Follow the dedicated doc.