Installing on Linux
Note
We recommend installing on a modern Ubuntu or Fedora distribution, asboth are pretty well supported.
You can run Review Board inside a Linux virtual machine running on topof VMware ESXi or VMware Workstation Server.
Alternatively, we can host your Review Board server at RBCommons.
Before You Begin
Review Board is provided as downloadable packages throughPython setuptools. The easy part is installing Review Board itself. Theharder part is installing some of the dependencies, which we have less controlover. 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 thatyou have Python v2.x (2.5 or newer) installed.
Review Board supports the following database servers:
- MySQL v5.0.31 or newer
- PostgreSQL
- sqlite v3
And the following web servers:
- Apache + mod_wsgi, fastcgi, or mod_python
- lighttpd + fastcgi
The instructions below are assuming you’re logged in as root
orare 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 runningeasy_install. This must be done as the user runningeasy_install, in the same shell. For example:
$ sudo -s $ export http_proxy=http://proxy.example.com/ $ easy_install ....
If you’re running Fedora
Fedora provides Review Board packages that are released shortly after weperform new releases. To install Review Board and its dependencies onFedora, simply run:
$ yum install ReviewBoard
You can then skip the rest of this guide for the required components. You maystill want to install optional components, such asAmazon S3 Support.
You will still need to install your site. See Creating a Review Board Site fordetails.
If you’re running CentOS, Red Hat, etc.
CentOS, RedHat, Scientific Linux, and other Enterprise Linux distributionsneed to have the EPEL package repository added. Please see theinstructions on adding the EPELpackage repositories to your system.
Once added, you can install Review Board and its dependencies by running:
$ yum install ReviewBoard
You can then skip the rest of this guide for the required components. You maystill want to install optional components, such asAmazon S3 Support.
You will still need to install your site. See Creating a Review Board Site fordetails.
Installing Python Setuptools
Before you begin, you’ll need Python setuptools version 0.6c9 or higher.Most Linux distributions have this packaged and available for installation.
To install on Debian, Ubuntu, or another Debian-based distribution,type:
$ apt-get install python-setuptools
To install on Fedora 8 and above, type:
$ yum install -y python-setuptools-devel.noarch
To install on a RedHat Enterprise, CentOS, Fedora 7 and earlier, oranother RedHat-based distribution, type:
$ yum install python-setuptools
Users of other distributions should check with their distribution for nativepackages, or follow the setuptools installation instructions.
If the version of setuptools available for your distribution is older than0.6c9, you’ll need to install it first, and then upgrade it to the latestversion by running:
$ easy_install -U setuptools
Installing Python Development Headers
You will need to install the Python development headers for yourdistribution.
To install on Debian, Ubuntu, or another Debian-based distribution,type:
$ apt-get install python-dev
To install on a RedHat Enterprise, Fedora, CentOS, or anotherRedHat-based distribution, type:
$ yum install python-devel
Installing memcached
Memcached
Memcached is a high-performance caching server used by Review Board. Whileoptional, it’s strongly recommended in order to have a fast, responsiveserver. 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
python-memcached
You’ll need to install python-memcached. You can install this by typing:
$ easy_install python-memcached
Installing patch
patch is required for Review Board’s diff viewer to work.All distributions should provide this. We recommend using patch version 2.7 ornewer.
To install on Debian or Ubuntu, type:
$ apt-get install patch
To install on RedHat Enterprise, Fedora or CentOS, type:
$ yum install patch
Installing Review Board
To install Review Board and its required dependencies (Djblets,Django-Evolution, Django, flup, paramiko and Python Imaging Library)in one go, type:
$ easy_install ReviewBoard
This will automatically download and install the latest stable release ofReview Board and the required versions of its core dependencies.
If you want to install an in-development release, seeInstalling Development Releases.
Installing Database Bindings
Depending on the database you plan to use, you will probably need additionalbindings.
MySQL
To install, type:
$ easy_install mysql-python
Distributions may provide native packages. You may also need to install a mysqldevelopment package first.
To install on Debian or Ubuntu, type:
$ apt-get install python-mysqldb
PostgreSQL
To install, type:
$ easy_install psycopg2
Installing Source Control Components
Depending on which source control systems you plan to use, you will needsome additional components.
CVS
To use Review Board with CVS, you’ll need the cvs packageinstalled. 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 itmanually from http://www.git-scm.com/.
Mercurial
To install support for Mercurial, type:
$ easy_install mercurial
You can also check your distribution for a native package, or use one of thebinary packages provided.
Perforce
To use Review Board with Perforce, you’ll first need to installp4 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:
$ easy_install P4PythonInstaller
This should fetch the appropriate versions of the p4api
library andcompile it. This will require that you have standard build tools(gcc, make, etc.) installed on your system.
Subversion
To use Review Board with Subversion, you’ll need both subversion andeither subvertpy installed. For backwards compatibility with older ReviewBoard installations, PySVN may be installed in place of subvertpy.
subvertpy
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 fromscratch if you do not wish to add the EPEL repository. To install PySVN fromEPEL, add its repository, then type:
$ yum --enablerepo=epel install python-subvertpy
If your distribution doesn’t provide subvertpy, you can install it byinstalling the development packages for Python and subversion, and thenthe package itself via easy_install, by typing:
$ easy_install subvertpy
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 toinstall 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 bydownloading the latestrelease and following the instructions in the provided INSTALL.html
.
Installing Amazon S3 Support (optional)
This is an optional step.
Review Board can use Amazon S3 to store uploaded screenshots. To installthis, you will need the django-storages
module. Type:
$ easy_install django-storages
After you’ve installed Review Board and created your site, you will needto configure this. See the File Storage Settings documentation formore information.
Installing OpenStack Swift Support (optional)
This is an optional step.
Review Board can use OpenStack Swift to store uploaded screenshots. To installthis, you will need the django-storage-swift
module. Type:
$ easy_install django-storage-swift
After you’ve installed Review Board and created your site, you will needto configure this. See the File Storage Settings documentation formore information.
Installing Development Tools (optional)
If you plan to work on Review Board’s source code, there are a fewadditional packages you’ll need to install:
You can install these in one go by typing:
$ easy_install nose Sphinx
After Installation
Once you’ve finished getting Review Board itself installed, you’ll want tocreate your site. See Creating a Review Board Site for details.