Install Review Board

You must install the Review Board before you can make it available as an integrated application to project managers on your TeamForge site.

Important:
  • Install the Review Board application on the TeamForge Application Server or on a separate server of its own. Review Board database can be installed on the TeamForge PostgreSQL Database Server on sites with database running on a separate server.
  • To install Review Board successfully, ensure that other repositories such as EPEL (Extra Packages for Enterprise Linux) are disabled apart from the CollabNet and Operating System repositories.
  • This procedure is for those who are installing the Review Board for the first time.
  • In this scenario, both TeamForge and Review Board use PostgreSQL.
  • TeamForge 17.4 supports Review Board 2.5.6.1 on RHEL/CentOS 6.8 and 7.3.
Attention: Installing or upgrading TeamForge needs root privileges. You must log on as root or use a root shell to install or upgrade TeamForge.

Do this on the main TeamForge Application Server. We'll call this my.app.box

  1. Download the Review Board installer zip file from http://collab.net/downloads/integrations#tab-1 and save it in the /opt/collabnet folder
    Note: Download the RBInstaller-17.4.7.zip file.
  2. Unzip the installer zip file.
    • cd /opt/collabnet
    • unzip RBInstaller-17.4.7.zip
  3. Make sure that "reviewboard" , "reviewboard-database" and "reviewboard-adapter" identifiers have been added to the SERVICES token of the TeamForge Application Server's site-options.conf file.
    server-01:SERVICES = ctfcore ctfcore-database mail search codesearch cliserver etl 
    ctfcore-datamart subversion cvs gerrit gerrit-database binary binary-database 
    reviewboard reviewboard-database reviewboard-adapter

    Review Board database can be installed on TeamForge PostgreSQL Database Server on sites with database running on a separate server, in which case you must add the "reviewboard-database" identifier to the SERVICES token of the TeamForge PostgreSQL Database Server's site-options.conf file.

  4. Modify these values in the install.conf file to suit your installation environment.
    • vi /opt/collabnet/RBInstaller-17.4.7/installer/install.conf
    Option Description
    rb_dir=/opt/collabnet/teamforge/var/reviewboard The path of the directory where the Review Board files and libraries are installed.
    rb_data_dir=/opt/collabnet/teamforge/var/reviewboard/data The path of the directory where Review Board's database file, review request files and attachments are stored.
    Note: The default Review Board data directory has been changed from /opt/collabnet/reaviewboard/data to /opt/collabnet/teamforge/var/reviewboard/data in TeamForge 17.4.
    domain=<domain name or host name> The Review Board site information. For example, cu064.cloud.maa.collab.net.
    rb_database_type=postgresql The Review Board database type.
    rb_database_host=<reviewboard_db_hostname> The Review Board database host name.
    rb_database_port=<reviewboard_db_port> The Review Board database port.
    ctf_base_url=https://myapp.collab.net The absolute URL of the TeamForge site that you want to associate to.
    ctf_site_var_dir=/opt/collabnet/teamforge/var The location of the rbctfevents.jar file.
  5. Deploy services.
    • /opt/collabnet/teamforge/bin/teamforge provision
    Note:

    The "provision" command prompts for response before it bootstraps or migrates data during TeamForge installation and upgrade respectively. Enter "y" or "N" to proceed. For more information, see the TeamForge script.

    TeamForge 17.4 (and later) installer expects the system locale to be LANG=en_US.UTF-8. TeamForge "provision" command fails otherwise.

  6. Run the following grep commands to get the value of HTTPD_USER, HTTPD_GROUP and HOME_DIR_BASE.
    • grep HTTPD_USER= /opt/collabnet/teamforge/runtime/conf/runtime-options.conf
    • grep HTTPD_GROUP= /opt/collabnet/teamforge/runtime/conf/runtime-options.conf
    • grep HOME_DIR_BASE= /opt/collabnet/teamforge/runtime/conf/runtime-options.conf
    • chown -R <HTTPD_USER>:<HTTPD_GROUP> <HOME_DIR_BASE>/<HTTPD_USER>
  7. Run the install.py script available in the Review Board installer directory.
    • cd /opt/collabnet/RBInstaller-17.4.7
    • python ./install.py -i -r --auth-scmuser
    Attention: The Review Board installer pauses abruptly on sites using trusted certificates expecting user intervention. Press Enter to proceed with the installation/upgrade.
  8. Set up the initial Review Board data. Run the bootstrap-data.py script available in the Review Board installer directory.
    • cd /opt/collabnet/RBInstaller-17.4.7
    • python ./bootstrap-data.py
  9. Run the grep command to get the value of httpd_user and httpd_group.
    • grep httpd_user /etc/reviewboard.properties
    • grep httpd_group /etc/reviewboard.properties
    • chown -R <httpd_user>:<httpd_group> /opt/collabnet/teamforge/var/reviewboard/data
  10. Restart TeamForge.
    • setenforce 1
    • /opt/collabnet/teamforge/bin/teamforge restart
  11. If SCM is installed on a separate box, run the following script to authenticate a scmviewer user against a TeamForge Subversion repository for creating a new review request.
    • python ./svn-auth.py --repo-path=https://<scm_domain>/svn/repos/<repo_dir_name>
    You should now have a Review Board instance ready to work with TeamForge. The installer has created two configuration files: installer/conf/rb-application.xml and installer/conf/rb-deploy.xml. See Integrate Review Board with your TeamForge site for more information.
Note: Run the following scripts available in the Review Board installer directory.