Skip to content

reviewboard/rbtools

Repository files navigation

About RBTools

RBTools is a set of command line tools and a rich Python API for use with Review Board.

These tools make it easy to post changes for review, keep them up-to-date, land reviewed changes, and test other people's changes in your own tree, check your workload, and much more.

When using RBTools, you'll do most everything through the rbt command, which supports a number of sub-commands, like post, diff, land, and patch.

Installing RBTools

You can install RBTools in any Python environment by running:

$ pip install RBTools

We also provide native installers for Windows. See the RBTools Downloads page for downloads and installation instructions.

See the RBTools documentation for more information.

Using the Python API

The included Python API can be used to write scripts and applications that interface with Review Board, and can also be used to write new commands for RBTools.

There's very little that you can't do with the Python API. To learn more, see the RBTools Python API documentation and the Review Board API documentation.

Getting Support

We can help you get going with Review Board and RBTools, and diagnose any issues that may come up.

If you're using RBTools in production, we offer support contracts, covering all Beanbag products. This helps fund the development of Review Board, RBTools, and our other open source projects.

For basic questions, there's a public community support discussion list. We generally respond to requests within a couple of days. This support works well for general, non-urgent questions that don't need to expose confidential information.

Reporting Bugs

Hit a bug? Let us know by filing a bug report.

You can also look through the existing bug reports to see if anyone else has already filed the bug.

Contributing

Are you a developer? Do you want to integrate with RBTools, or work on RBTools itself? Great! Let's help you get started.

We accept patches to Review Board, RBTools, and other related projects on reviews.reviewboard.org. (Please note that we do not accept pull requests.)

Got any questions about anything related to RBTools and development? Head on over to our development discussion list.

Testing RBTools

If you're writing patches for RBTools, you'll need to know how to run our test suite.

First, make sure you have the necessary dependencies:

$ pip install -e .
$ pip install -r dev-requirements.txt

Running the Tests

Running the test suite is easy. Simply run:

$ ./tests/runtests.py

from the top of the source tree. You can also run a particular set of tests. For instance:

$ pytest ./rbtools/api/tests

See pytest --help for more options.

Related Projects

  • Review Board - Our open source, extensible code review, document review, and image review tool.

  • Djblets - Our pack of Django utilities for datagrids, API, extensions, and more. Used by Review Board.

  • Review Bot - Pluggable, automated code review for Review Board.

  • RB Gateway - Manages Git repositories, providing a full API enabling all of Review Board's feaures.

You can see more on github.com/beanbaginc and github.com/reviewboard.