Skip to content

Provide a server-sent events API for rebroadcast of GitLab webhook data

BryanDavis requested to merge (removed):work/bd808/sse-streaming into main
  • Update to use asyncio via hypercorn and the quart framework
  • Add an SSE API for clients like wikibugs to use to subscribe to the webhook data stream
  • Introduce additional changes needed to make the resulting tool run well from a build service managed container

See the individual commit messages for more detail on each set of changes.

The SSE stream can be tested with cURL:

$ curl --no-buffer -H 'Accept: text/event-stream' 'https://bd808-test2.toolforge.org/sse/'
: Initial connect ping
event: keepalive
data: {"keepalive": 4525419.980976326}

: Queue get timeout ping
event: keepalive
data: {"keepalive": 4525486.431112611}

Merge request reports