Add new `bgd rmq-server` subcommand and required scaffolding
Before raising this MR, consider whether the following are required, and complete if so:
[ ] Unit tests[ ] Metrics[ ] Documentation update(s)
If not required, please explain in brief why not.
Description
This adds new files and definitions needed for the implementation of a new Server powered by Rabbit MQ, placing its entry point in bgd rmq-server.
Changes proposed in this merge request:
- Add
bgd rmq-serversubcommand - Define a new global config schema:
config-rmq.yamland a parser for it inrmq_parser.py - Define a new
!rabbitmq-connectionYAML tag (with pika as a reference) - Add a sample config for the new format
Validation
YAML parsing works as expected, bgd rmq-server $CONFIG outputs something like:
Validating !rabbitmq-connection...
Would start server listening on: <buildgrid._app.settings.parser.Channel object at 0x7f892c8b6908>, connected to RabbitMQ server <buildgrid._app.settings.rmq_parser.RabbitMqConnection object at 0x7f892c84d828>.
Issues addressed
Closes #374 (closed)
Edited by Santiago Gil