---
title: Review Board
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, development, code-review, git, python, svn, mercurial, legacy]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Development, https://github.com/reviewboard/reviewboard]
---

# 💻 Review Board

> **L'ancêtre open source de la code review** : créé en 2006 par VMware, Review Board reste un outil de référence pour les équipes qui veulent un workflow de revue de code **structuré, scriptable, et compatible multi-VCS** (Git, SVN, Mercurial, Perforce).

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | [reviewboard.org](https://www.reviewboard.org/) |
| **GitHub** | [reviewboard/reviewboard](https://github.com/reviewboard/reviewboard) |
| **License** | MIT |
| **Langage** | Python (Django) |
| **Étoiles GitHub** | 1,7k ⭐ |
| **Dernière MAJ** | 2026-06-07 |
| **Catégorie** | [[cat-development\|Development]], Code Review |

## 📝 Description

**Review Board** est un **outil de code review open source créé en 2006** par **VMware** (développé originellement par Christian Hammond et David Trowbridge), bien avant la généralisation de GitHub/GitLab. C'est l'un des **plus anciens projets de code review** encore activement maintenus, et il équipe des organisations comme **Apache Software Foundation, Mozilla, Docker, Samsung**.

L'idée : offrir un **workflow de review structuré** (review requests, review drafts, ship-it, screenshots, comments inline, batch updates) **indépendant de la plateforme d'hébergement Git**. Contrairement à GitHub/GitLab où la code review est **intégrée au workflow Git**, Review Board fonctionne comme un **layer transverse** : on peut review du code venant de **Git, SVN, Mercurial, Perforce, Plastic, ClearCase** — utile pour les organisations qui mixent les VCS ou qui ont des legacy.

Review Board se distingue par sa **maturité** (20 ans d'évolution), son **API REST complète** (scriptable, intégrable), et son **écosystème d'extensions** (Power Pack commercial, Review Bot). Pour les **équipes enterprise** ou les **projets open source matures** qui veulent un outil de review dédié (et pas juste un tab "Pull Request"), c'est une option solide.

**Public cible** : **équipes enterprise, projets open source, organisations multi-VCS, équipes qui veulent un workflow de review explicite et auditable**.

### Fonctionnalités principales

- ✅ **Multi-VCS** : Git, SVN, Mercurial, Perforce, Plastic, ClearCase, CVS
- ✅ **Review requests** : formel, structuré, avec champs description/testing
- ✅ **Diff viewer** : side-by-side, unified, syntax highlighting 100+ langages
- ✅ **Commentaires inline** ancrés sur le code (fichier + ligne)
- ✅ **Screenshots / attachments** : pièces jointes aux reviews
- ✅ **Ship-it !** : validation rapide d'un review
- ✅ **Batch updates** : publier plusieurs review comments en une fois
- ✅ **Statuts** : pending, submitted, discarded, archived
- ✅ **API REST** complète : tout est scriptable
- ✅ **Webhooks** : intégration CI/CD (Jenkins, GitHub Actions)
- ✅ **Extensions** : Power Pack (statistiques), Review Bot (lint auto)
- ✅ **Maturité enterprise** : SSO SAML, audit, LDAP/AD

## 🚀 Installation

### Via Docker (community)

```yaml
# docker-compose.yml
version: '3.8'
services:
  reviewboard:
    image: beanbag/reviewboard:latest
    container_name: reviewboard
    restart: unless-stopped
    ports:
      - "8080:8080"
    environment:
      REVIEWBOARD_SITE_DOMAIN: "review.example.com"
      REVIEWBOARD_SITE_ROOT: "/"
      REVIEWBOARD_SITE_ADMIN_MEDIA: "admin/"
      REVIEWBOARD_DB_ENGINE: "django.db.backends.postgresql"
      REVIEWBOARD_DB_NAME: reviewboard
      REVIEWBOARD_DB_USER: reviewboard
      REVIEWBOARD_DB_PASSWORD: changez-moi
      REVIEWBOARD_DB_HOST: db
      REVIEWBOARD_REPO_SSH_HOST: "review.example.com"
      REVIEWBOARD_ALLOWED_HOSTS: "review.example.com"
    volumes:
      - reviewboard_data:/var/www/reviewboard
    depends_on:
      - db
      - memcached
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.review.rule=Host(`review.example.com`)"
      - "traefik.http.routers.review.entrypoints=websecure"
      - "traefik.http.routers.review.tls.certresolver=letsencrypt"

  db:
    image: postgres:16-alpine
    container_name: reviewboard-db
    restart: unless-stopped
    environment:
      POSTGRES_USER: reviewboard
      POSTGRES_PASSWORD: changez-moi
      POSTGRES_DB: reviewboard
    volumes:
      - reviewboard_db:/var/lib/postgresql/data

  memcached:
    image: memcached:1.6-alpine
    container_name: reviewboard-memcached
    restart: unless-stopped

volumes:
  reviewboard_data:
  reviewboard_db:
```

### Installation manuelle (Debian/Ubuntu)

```bash
sudo apt install -y python3-pip python3-dev memcached postgresql libmemcached-dev
sudo -u postgres createuser --createdb --superuser reviewboard
sudo -u postgres createdb -O reviewboard reviewboard
sudo pip install ReviewBoard
sudo rb-site install /var/www/reviewboard
sudo rb-site manage /var/www/reviewboard runserver
```

## ⚙️ Configuration

1. **Créer un compte admin** : premier accès sur `https://review.example.com`
2. **Ajouter un repository** : Admin > Repositories > Add > type (Git/SVN) + URL
3. **Configurer les groupes d'utilisateurs** : Admin > Users / Groups
4. **Intégration CI/CD** : webhooks post-commit ou pre-merge
5. **Extensions** : installer `Power Pack` (commercial, statistiques), `Review Bot` (auto-lint)
6. **SSO** : configurer LDAP/AD ou SAML (Power Pack)
7. **Sauvegardes** : DB PostgreSQL + `reviewboard_data` (uploads)

## 🔗 Alternatives

- **Gerrit** — Concurrent direct, basé sur Git uniquement, plus "engineering-heavy"
- **Phabricator** — Suite complète (Differential + Diffusion + Herald), abandonnée
- **GitLab** — Code review intégrée, leader du marché moderne
- **GitHub Pull Requests** — Standard pour projets open source
- **Crucible** — Atlassian, propriétaire, cher
- **Gitea/Forgejo** — Plateforme Git légère, PRs intégrées
- **RhodeCode** — Plateforme centralisée (Git + Mercurial), plus large

## 🔒 Sécurité

- **🔐 HTTPS obligatoire via [[app-traefik]]** : Review Board contient potentiellement du code source sensible
- **🛡️ Authentification forte** : configurer SSO/SAML (LDAP, Google, GitHub OAuth)
- **🔒 Permissions par repository** : configurer groupes d'accès, lecture seule par défaut
- **🛡️ API tokens** : utiliser des tokens à scope limité pour les intégrations CI/CD
- **🛡️ Audit log** : conserver les logs d'accès (intégration Power Pack)
- **🛡️ Sauvegardes chiffrées** : DB PostgreSQL + uploads

## 📚 Ressources

- [Site officiel](https://www.reviewboard.org/)
- [Documentation](https://www.reviewboard.org/docs/)
- [GitHub reviewboard/reviewboard](https://github.com/reviewboard/reviewboard)
- [Power Pack (commercial)](https://www.reviewboard.org/power-pack/)
- [Review Bot](https://www.reviewboard.org/downloads/reviewbot/)
- [Liste des déploiements notables](https://www.reviewboard.org/users/)

## 🔗 Pages Liées

- [[cat-development]] — Catégorie Development
- [[app-gitea]] — Plateforme Git légère avec PRs intégrées
- [[app-gitlab]] — Plateforme DevOps complète (code review incluse)
- [[app-traefik]] — Reverse proxy HTTPS
- [[securisation-home-lab]] — Bonnes pratiques
- [[recettes-docker-compose]] — Templates Docker
