4.2 KiB
Review Board - Cloudron Build Notes
This document provides instructions for building, testing, and deploying the Review Board Cloudron package.
Package Overview
Review Board is a powerful web-based code review tool that helps teams review code, documents, and images before they are committed. This package configures Review Board to run on Cloudron with the following features:
- PostgreSQL database for data storage
- Memcached for caching
- Nginx as the web server
- Gunicorn as the WSGI server
- Support for Cloudron’s OIDC and LDAP authentication
- Proper data separation following Cloudron’s filesystem layout
Prerequisites
- Cloudron CLI tool installed (
npm install -g cloudron
) - Docker installed and running
- Cloudron account with administrative access
Files Included in the Package
- CloudronManifest.json - Defines the application for Cloudron
- Dockerfile - Instructions for building the Docker image
- start.sh - Initialization and startup script
- supervisord.conf - Process management configuration
- nginx.conf - Web server configuration
Building the Package
-
Create a new directory for your package files:
mkdir reviewboard-cloudron cd reviewboard-cloudron
-
Create all the package files in this directory.
-
Download the Review Board icon and save it as
icon.png
:curl -L “https://raw.githubusercontent.com/reviewboard/reviewboard/master/reviewboard/static/rb/images/logo.png” -o icon.png
-
Build the package:
cloudron build
Testing Locally (Optional)
-
Run the Docker image locally to test basic functionality:
docker run -p 8000:8000 cloudron/reviewboard-app:1.0.0
-
Access the application at http://localhost:8000 to check if it starts correctly.
Deploying to Cloudron
-
Install the package on your Cloudron:
cloudron install —image cloudron/reviewboard-app:1.0.0
-
Or, to update an existing installation:
cloudron update —image cloudron/reviewboard-app:1.0.0 —app reviewboard.yourdomain.com
Post-Installation
-
Access your Review Board instance at the URL assigned by Cloudron.
-
Log in using the initial admin credentials:
- Username:
admin
- Password: Check the file
/app/data/admin_password.txt
inside the app container:cloudron exec —app reviewboard.yourdomain.com cat /app/data/admin_password.txt
- Username:
-
Configure your repository connections in the Review Board admin interface at
/admin/
.
Authentication Details
OIDC Authentication (Default)
The package is configured to use Cloudron’s OIDC provider when available. Users logging in via OIDC will be automatically provisioned in Review Board.
LDAP Authentication (Alternative)
If OIDC is not available, the package will fall back to using Cloudron’s LDAP server for authentication.
Repository Support
Review Board supports the following repository types:
- Git
- SVN
- Mercurial
- Perforce
- Bazaar
- CVS
- IBM Rational ClearCase
- And more
Configure these in the Admin > Repositories section after login.
Troubleshooting
-
Check application logs:
cloudron logs —app reviewboard.yourdomain.com
-
Access the container directly to troubleshoot:
cloudron exec —app reviewboard.yourdomain.com bash
-
Validate database connectivity:
cloudron exec —app reviewboard.yourdomain.com psql “$CLOUDRON_POSTGRESQL_URL”
-
If Review Board shows errors about missing repositories, ensure they are accessible from the Cloudron container.
Backup and Restore
Cloudron automatically backs up the /app/data
directory, which includes:
- Database (via PostgreSQL addon)
- Media files (uploaded files, screenshots, etc.)
- Configuration files
- Repository cache
No additional backup configuration is necessary.
Upgrading Review Board
When a new version of Review Board is released:
- Update the Dockerfile to install the new version
- Rebuild the Docker image
- Update the Cloudron app using the
cloudron update
command