swift-unidoc
swift-unidoc copied to clipboard
support GitHub webhooks
crawling frequency is way too low for actively-developed packages with fewer than 50 stars, so we should support GitHub webhooks
- [ ] whitelist GitHub IP addresses
- [ ] determine if GitHub is capable of delivering webhooks over HTTP/2, and if not, add a
POSTcarveout specifically for GitHub IP addresses - [ ] decode the
createevent and register it in the database - [ ] add a webhook secret to the package repo metadata
it looks like GitHub delivers webhooks over HTTP/1.1, so a carveout is needed. however, it seems to be successfully surmounting the firewall already.
i think for now, we can put off webhook secrets, as we are verifying almost all incoming webhook requests by IP address