Installing on Linux¶
Note
We recommend installing on a modern Ubuntu, Fedora, or CentOS distribution, as these are pretty well supported.
You can run Review Board inside a Linux virtual machine use our Docker images to better help manage your infrastructure.
If you just want to get started with a simple install for evaluation purposes, we recommend installing using our Docker images, or Bitnami’s Review Board installer and virtual machines.
Alternatively, we can host your Review Board server at RBCommons.
Before You Begin¶
Review Board is provided as downloadable Python packages. The easy part is installing Review Board itself. The harder part is installing some of the dependencies, which we have less control over. This guide will help with some of these dependencies.
It’s assumed that you know which database and web server you want to use, and have already installed these on your server. It’s also assumed that you have Python 2.7 installed.
Review Board supports the following database servers for production:
- MySQL (v5.6 or higher recommended)
- PostgreSQL
And the following web servers:
- Apache + mod_wsgi
Other servers, such as nginx or lighttpd, can be used as well, provided that you have a standard WSGI loader. However, Review Board does not auto-generate configurations for these servers.
The instructions below are assuming you’re logged in as root
or
are using sudo.
Using a HTTP Proxy¶
If you’re behind a proxy server, you’ll need to set the http_proxy
environment variable to your proxy server before running pip. This
must be done as the user running pip, in the same shell. For
example:
$ sudo -s
$ export http_proxy=http://proxy.example.com/
$ pip install ....
Installing Pip and Setuptools¶
Before you begin, you’ll need up-to-date versions of pip and Python setuptools. Most Linux distributions have this available by default, but you can also install them if needed thorugh your package repository.
See the pip installation instructions for details on how to install pip.
Once installed, make sure you have the very latest versions of pip and setuptools available:
$ pip install -U pip setuptools
Installing Required Dependencies¶
You will need to install a handful of dependencies required by Review Board. Some of these are required to install Review Board’s dependencies, and some are required at runtime.
To install on Debian, Ubuntu, or another Debian-based distribution, type:
$ apt-get install build-essential python-dev libffi-dev libssl-dev patch
To install on a RedHat Enterprise, Fedora, CentOS, or another RedHat-based distribution, type:
$ yum install gcc python-devel libffi-devel openssl-devel patch
Installing Memcached¶
Memcached¶
Memcached is a high-performance caching server used by Review Board. While optional, it’s strongly recommended in order to have a fast, responsive server. Along with memcached, we need the python-memcached Python bindings.
To install on Debian or Ubuntu, type:
$ apt-get install memcached
To install on RedHat Enterprise, Fedora or CentOS, type:
$ yum install memcached
Installing Review Board¶
To install Review Board and its required dependencies in one go, type:
$ pip install ReviewBoard
This will automatically download and install the latest stable release of Review Board and the required versions of its core dependencies.
Installing Database Bindings¶
Depending on the database you plan to use, you will probably need additional bindings.
Installing Source Control Components¶
Depending on which source control systems you plan to use, you will need some additional components.
CVS¶
To use Review Board with CVS, you’ll need the cvs package installed. This is available on almost every distribution.
To install on Debian or Ubuntu, type:
$ apt-get install cvs
To install on RedHat Enterprise, Fedora or CentOS, type:
$ yum install cvs
Git¶
To install on Debian or Ubuntu, type:
$ apt-get install git-core
To install on Fedora, type:
$ yum install git-core
If your distribution doesn’t provide Git, you’ll need to install it manually from https://www.git-scm.com/.
Mercurial¶
To install support for Mercurial, type:
$ pip install -U mercurial
You can also check your distribution for a native package, or use one of the binary packages provided.
Perforce¶
To use Review Board with Perforce, you’ll first need to install
p4 some place in your web server’s path (usually /usr/bin
).
You can download this from the Perforce downloads page.
You’ll then need to install the Python bindings by typing the following:
$ pip install p4python
Subversion¶
To use Review Board with Subversion, you’ll need both subversion and PySVN installed. In the event that PySVN cannot be installed, subvertpy may be used as an alternative, but we recommend PySVN for the best compatibility.
PySVN¶
To install on Debian or Ubuntu, type:
$ apt-get install subversion python-svn
To install on Fedora, type:
$ yum install subversion pysvn
RedHat Enterprise and CentOS provide subversion, but you may have to install PySVN from scratch if you do not wish to add the EPEL repository. To install Subversion, type:
$ yum install subversion
To install PySVN from EPEL, add its repository, then type:
$ yum --enablerepo=epel install pysvn
If your distribution doesn’t provide PySVN, you can install it by
downloading the latest
release and following the instructions in the provided INSTALL.html
.
subvertpy¶
Note
subvertpy is only needed if you cannot install PySVN. We strongly recommend using PySVN for the best Subversion compatibility.
To install on Debian or Ubuntu, type:
$ apt-get install python-subvertpy
To install on Fedora, type:
$ yum install python-subvertpy
On RedHat Enterprise and CentOS, you may have to install subvertpy from scratch if you do not wish to add the EPEL repository. To install PySVN from EPEL, add its repository, then type:
$ yum --enablerepo=epel install python-subvertpy
If your distribution doesn’t provide subvertpy, you can install it by installing the development packages for Python and subversion, and then the package itself via pip, by typing:
$ pip install -U subvertpy
Installing Amazon S3 Support (optional)¶
This is an optional step.
Review Board can use Amazon S3 to store uploaded screenshots. To install
this, you will need the django-storages
module. Type:
$ pip install -U django-storages==1.1.8
After you’ve installed Review Board and created your site, you will need to configure this. See the File Storage Settings documentation for more information.
Installing OpenStack Swift Support (optional)¶
This is an optional step.
Review Board can use OpenStack Swift to store uploaded screenshots. To
install this, you will need the django-storage-swift
module. Type:
$ pip install -U django-storage-swift
After you’ve installed Review Board and created your site, you will need to configure this. See the File Storage Settings documentation for more information.
After Installation¶
Once you’ve finished getting Review Board itself installed, you’ll want to create your site. See Creating a Review Board Site for details.