githubwebhook

package
v0.12.14-0...-c262a0e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 9, 2026 License: AGPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	DB     db.Database
	GitHub githubclient.GitHubClient
	// RestateAdmin is used to cancel in-flight Deploy invocations when a
	// new push supersedes an older one on the same branch.
	RestateAdmin                    *restateadmin.Client
	DashboardURL                    string
	AllowUnauthenticatedDeployments bool
}

Config holds the configuration for creating a Service.

type Service

type Service struct {
	hydrav1.UnimplementedGitHubWebhookServiceServer
	// contains filtered or unexported fields
}

Service implements the GitHubWebhookService virtual object for processing GitHub push events durably via Restate. Keyed by "{installation_id}/{repo_id}" to serialize webhook processing per repository.

func New

func New(cfg Config) *Service

New creates a new Service with the provided configuration.

func (*Service) HandlePush

HandlePush processes a GitHub push event durably via Restate. It looks up repo connections with full deploy context (project, environment, app, settings) in a single query, creates deployment records, and fires off DeployService.Deploy().

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL