Skip to content

Commit 26c30cf

Browse files
committed
feat: move GitHub webhook processing into Restate
Thins the HTTP handler to: validate signature → parse payload → send to Restate → return 200. All DB work moves into a new GitHubWebhookService (VIRTUAL_OBJECT keyed by installation_id/repo_id) that serializes processing per repository and retries automatically on failure. X-GitHub-Delivery is passed as the Restate idempotency key for natural deduplication of retried deliveries.
1 parent 6040a5b commit 26c30cf

File tree

10 files changed

+740
-263
lines changed

10 files changed

+740
-263
lines changed

gen/proto/hydra/v1/BUILD.bazel

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ go_library(
1313
"deploy_restate.pb.go",
1414
"deployment.pb.go",
1515
"deployment_restate.pb.go",
16+
"github_webhook.pb.go",
17+
"github_webhook_restate.pb.go",
1618
"key_refill.pb.go",
1719
"key_refill_restate.pb.go",
1820
"oneof_interfaces.go",

gen/proto/hydra/v1/github_webhook.pb.go

Lines changed: 250 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gen/proto/hydra/v1/github_webhook_restate.pb.go

Lines changed: 132 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)