This change adds a Pulse listener for hg pushes as a background process
to `bugbug-http-service`.
This listener works if `PULSE_USER` and `PULSE_PASSWORD` are set before starting
up the Docker containers.
The listener only pays attention to autoland and try pushes. When these happen
we do a GET request from the bugbug deployment. This will get the schedules service
ready for when the Gecko decision task will query it.
* Pre-load bugbug models in the RQ worker
Implement our own background worker script in order to be able to load the
bugbug models before the RQ worker is forking. This way we load them once at
startup and each job will be able to reuse it.
* Update BG worker to use the new worker
Fixes#557
The data pipeline failed before because it tried downloading the model from
outside the Docker image and didn't had bugbug installed.
The clean way of solving this would be to build a base http service image on
release and build another one where we simply download the models but let's
fix it this way for now.
* Add a way to skip checking models while building the http service image
* Don't push the http service on release
It isn't built with the real models on release
* Use taskboot 0.1.1
* Update the index URLs in bugbug
* Split the http service Docker image in two
This way we can both:
- Build the first half (code + dependencies) in the usual CI.
- Build the second half at the end of the data pipeline with updated models.
Taskboot build-compose doesn't support building all services except a
specific one and it might be cumbersome to add this feature so move the second
half of the Docker image to a separate docker-compose file.