Dequeue changes via github checks API

The Github checks API allows us to define custom actions on a check run.
With that, we can define a custom "abort" action, that enables users to
directly abort a running change by clicking on a respective button in
Github's checks tab.

A click on this button will emit a Github webhook event that is now
handleded by Zuul to dequeue the respective change.

To uniquely identify a change represented by a check run, each check run
now comes with an external ID which is a combination of tenant,
pipeline, queue and PR number.

Change-Id: I574479cd06abd1ea4f3daa7850cf35ea6715a23d
This commit is contained in:
Felix Edel
2020-02-20 10:29:53 +01:00
parent e64fd8fff8
commit f5790f2d63
7 changed files with 263 additions and 13 deletions

View File

@@ -0,0 +1,6 @@
---
features:
- |
Changes can now be dequeued via the Github checks API. If a github
reporter is configured to use the checks API, all running checks will
provide a custom "Abort" action.