Add the beginnings of a local Review Board worker process.
Review Request #15233 — Created Aug. 15, 2026 and updated — Latest diff uploaded
The Review Board worker process is a Celery-backed process that runs as
a complete Review Board environment, tied to a standard Review Board
install. Its job is to provide task management outside of the web server
process, whether that's handling potentially long-running asynchronous
tasks like e-mail or webhooks or more complex extension-provided tasks.This change simply introduces the core process, set up as a
rbworker
command pointing to the newreviewboard.workermodules. This runs a
Celery service, using the same setup procedures we have for Review Bot,
and sets up a couple of default (placeholder) queues.It takes a site directory and broker ID as part of the command line (or
available as environment variables). It then initializes Review Board
with the site directory and pulls the broker backend from the registry
and database. Communication then happens over the configured broker.Ultimately Review Board will manage running a local broker, with options
for more complex systemd-backed management in the future. This is not
currently implemented.There is nothing in place today for actually registering or managing any
tasks. Task registration is a larger process backed by David's spec, and
won't be part of this initial set of work. For now, we just have a
bare-bones worker that can run, connect to the queue, and respond to
scan requests. There's still TODO items like worker-specific logging
setup. These will come in future changes.
Unit tests pass.
Ran the worker in foreground and detached modes against the local
queue. Verified that it connected to the broker and that the broker
backend could successfully scan for it.