This project is Pulse listener that listens to Treeherder’s job cancellation and retrigger actions in ‘exchange/treeherder/v1/job-actions’ and acts upon them.
What it does
- worker.py listens to exchange/treeherder/v1/job-actions in an infinite loop.
- When it sees a retrigger actions it makes a retrigger request in builapi self-serve using make_retrigger_request from mozci.
- When it sees a cancel action it makes a cancel request in buildapi self-serve using make_cancel_request from mozci.
- Currently everything is run with dry_run=True, so instead of doing requests the script just logs the requests it would have made.
- worker.py reads exchange and topic from run_time_config.json. It then uses HANDLERS_BY_EXCHANGE, a dictionary defined in config.py to decide what function it will use to handle incoming messages.
- Only buildbot topics (e.g. buildbot.#.# or buildbot.try.retrigger) in exchange/treeherder/v1/job-actions are supported for now.
- The functions to deal with TH’s job-actions are defined in the module treeherderactions.py
See bug 1168148 for more details.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.