Files
KNELProductionContainers/CloudronPackages/Reviewboard/ReviewBoard-BuildNotes.md

147 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 Cloudrons OIDC and LDAP authentication
- Proper data separation following Cloudrons filesystem layout
## Prerequisites
1. Cloudron CLI tool installed (`npm install -g cloudron`)
2. Docker installed and running
3. Cloudron account with administrative access
## Files Included in the Package
1. **CloudronManifest.json** - Defines the application for Cloudron
2. **Dockerfile** - Instructions for building the Docker image
3. **start.sh** - Initialization and startup script
4. **supervisord.conf** - Process management configuration
5. **nginx.conf** - Web server configuration
## Building the Package
1. Create a new directory for your package files:
```bash
mkdir reviewboard-cloudron
cd reviewboard-cloudron
```
2. Create all the package files in this directory.
3. Download the Review Board icon and save it as `icon.png`:
```bash
curl -L “https://raw.githubusercontent.com/reviewboard/reviewboard/master/reviewboard/static/rb/images/logo.png” -o icon.png
```
4. Build the package:
```bash
cloudron build
```
## Testing Locally (Optional)
1. Run the Docker image locally to test basic functionality:
```bash
docker run -p 8000:8000 cloudron/reviewboard-app:1.0.0
```
2. Access the application at http://localhost:8000 to check if it starts correctly.
## Deploying to Cloudron
1. Install the package on your Cloudron:
```bash
cloudron install —image cloudron/reviewboard-app:1.0.0
```
2. Or, to update an existing installation:
```bash
cloudron update —image cloudron/reviewboard-app:1.0.0 —app reviewboard.yourdomain.com
```
## Post-Installation
1. Access your Review Board instance at the URL assigned by Cloudron.
2. Log in using the initial admin credentials:
- Username: `admin`
- Password: Check the file `/app/data/admin_password.txt` inside the app container:
```bash
cloudron exec —app reviewboard.yourdomain.com cat /app/data/admin_password.txt
```
3. Configure your repository connections in the Review Board admin interface at `/admin/`.
## Authentication Details
### OIDC Authentication (Default)
The package is configured to use Cloudrons 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 Cloudrons 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
1. Check application logs:
```bash
cloudron logs —app reviewboard.yourdomain.com
```
2. Access the container directly to troubleshoot:
```bash
cloudron exec —app reviewboard.yourdomain.com bash
```
3. Validate database connectivity:
```bash
cloudron exec —app reviewboard.yourdomain.com psql “$CLOUDRON_POSTGRESQL_URL”
```
4. 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:
1. Update the Dockerfile to install the new version
2. Rebuild the Docker image
3. Update the Cloudron app using the `cloudron update` command
## Additional Resources
- [Review Board Documentation](https://www.reviewboard.org/docs/)
- [Cloudron Documentation](https://docs.cloudron.io/)