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:
  • Review Board 2.0.11 is not compatible with SUSE Linux Enterprise Server 11 SP2. You must use Review Board 1.7.17 if you are installing Review Board on SUSE Linux Enterprise Server 11 SP2.
  • To install Review Board successfully, ensure that other repositories similar to 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 8.0 supports Review Board 2.0.11 and 1.7.17 on RHEL/CentOS 7.0 and SUSE Linux Enterprise Server 11 SP2 respectively.

Log on to the server as root user always

Do this on the main TeamForge application server. We'll call this my.app.box

  1. Create a /var/ops folder and download the Review Board installer zip file from http://collab.net/downloads/integrations#tab-1 and save it in the /var/ops/ folder.
    Note:
    • Download RBInstaller-1.6.0.0.11.zip file if you are in RHEL/CentOS 7.0 platform.
    • Download RBInstaller-1.5.0.0.5.zip file if you are in SUSE Linux Enterprise Server 11 SP2 platform.
  2. Unzip the installer zip file.
    • cd /var/ops/
    • RHEL/CentOS 7.0: unzip RBInstaller-1.6.0.0.11.zip
    • SLES 11 SP2: unzip RBInstaller-1.5.0.0.5.zip
  3. Modify these values in the install.conf file to suit your installation environment.
    • RHEL/CentOS 7.0: vi /var/ops/RBInstaller-1.6.0.0.11/installer/install.conf
    • SLES 11 SP2: vi /var/ops/RBInstaller-1.5.0.0.5/installer/install.conf
    Option Description
    rb_dir=/opt/collabnet/reviewboard The path of the directory where the Review Board files and libraries are installed.
    rb_data_dir=/opt/collabnet/reviewboard/data The path of the directory where Review Board's database file, review request files and attachments are stored.
    domain=<domain name or host name> The Review Board site information. For example, cu064.cloud.maa.collab.net.
    rb_database_password=<reviewboard_db_password> The Review Board database password.
    rb_database_type=postgresql The Review Board database type.
    rb_database_name=<reviewboard_db_name> The Review Board database name.
    rb_database_user=<reviewboard_username> The Review Board database user name.
    rb_database_host=<reviewboard_db_hostname> The Review Board database host name.
    Tip: This is typically the application server's host name as Review Board always runs on the TeamForge application server. Default value is 'localhost'.
    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.
  4. Start the TeamForge application.
    • /etc/init.d/collabnet start all
  5. Note: This step is required only for SLES 11 SP2.
    Before installing Review Board, you must know the password for the scmviewer account. Run the following commands to get the password:
    1. Run the grep command to get the encrypted password.
      • grep SCM_USER_ENCRYPTED_PASSWORD /opt/collabnet/teamforge/runtime/conf/runtime-options.conf
    2. Use the password_util.sh script to decrypt the scmviewer password.
      • /opt/collabnet/teamforge/runtime/scripts/password_util.sh -decrypt '<value of SCM_USER_ENCRYPTED_PASSWORD>'
  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.

    RHEL/CentOS 7.0:

    • cd /var/ops/RBInstaller-1.6.0.0.11
    • python ./install.py -i -r --auth-scmuser

    SLES 11 SP2:

    • cd /var/ops/RBInstaller-1.5.0.0.5
    • python ./install.py -i -r --auth-scmuser
  8. Perform this step on the TeamForge application server on sites with database running on a separate server.
    1. Create the Review Board database and user name.
      • su - postgres
      • createuser -P -S --createdb --no-createrole ctfrbuser
      • createdb -E UTF8 -O ctfrbuser ctfrbdb
      • exit
    2. Restart PostgreSQL.
      • /etc/init.d/postgresql-9.3 restart
  9. Set up the initial Review Board data. Run the bootstrap-data.py script available in the Review Board installer directory.
    • RHEL/CentOS 7.0: cd /var/ops/RBInstaller-1.6.0.0.11
    • SLES 11 SP2: cd /var/ops/RBInstaller-1.5.0.0.5
    • python ./bootstrap-data.py
  10. 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/reviewboard/data
  11. Restart the TeamForge application.
    • /etc/init.d/collabnet stop all
    • /etc/init.d/collabnet start all
  12. 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.