GitHub payload to broker through AMQP
We send to the broker the GitHub payloads with a specific topic
routing key, to allow consumers to be selective about what they
want.
Routing key format: <door>.<group>.<GitHub event>
The group is determined by the following rules:
- a non repository event is handled by a specific group
- for repository events, a mapping repo/group is done
- as a fallback, a default group is used
For each gate, a set of rules can be configured.
P141 shows a sample config for Nasqueron repositories.
The configuration is mapped to a GitHubPayloadAnalyzerConfiguration instance.
Configuration files are located in the storage app/GitHubPayloadAnalyzer
directory.
Then, the GitHubPayloadAnalyzer class provides the routing logic.
The message is sent by the SendMessageToBroker job, at the request
of the AMQPEventListener event handler.