docker: Add optional services to update save requests through webhooks
As a first experiment using webhooks in Software Heritage, add optional services enabling to update a Save Code Now request status by sending push notifications through webhook messages to the webapp.
That feature can be used by initializing the docker environment with the following command:
$ docker compose -f docker-compose.yml -f docker-compose.webhooks.yml up -d
In that configuration, the service pulling Save Code Now requests to update their status is disabled and a new journal client service is used to forward origin visit status events through webhook messages.
The webhooks management relies on the use of Svix: an open source framework
which offers webhook sending as a service and the new swh-webhooks
package
interacting with the Svix server through its REST API.
Related to swh/meta#4836.