Documentation
¶
Index ¶
- type Client
- type GitHubClient
- type WebhookManager
- func (w *WebhookManager) CreateWebhook(ctx context.Context, repoURL, webhookURL, secret string, events []string) (*github.Hook, error)
- func (w *WebhookManager) DeleteWebhook(ctx context.Context, repoURL string, hookID int64) error
- func (w *WebhookManager) GetWebhook(ctx context.Context, repoURL string, hookID int64) (*github.Hook, error)
- func (w *WebhookManager) UpdateWebhook(ctx context.Context, repoURL string, hookID int64, webhookURL, secret string, ...) (*github.Hook, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client wraps the GitHub client with App authentication
func NewClient ¶
func NewClient(cfg *config.GitHubConfig) (*Client, error)
NewClient creates a new GitHub client with App authentication
func (*Client) GenerateInstallationToken ¶
func (c *Client) GenerateInstallationToken(ctx context.Context, repoURL string) (*github.InstallationToken, error)
GenerateInstallationToken creates an installation token for the repository
func (*Client) ValidateRepositoryURL ¶
ValidateRepositoryURL checks if the repository URL belongs to the configured organization
type GitHubClient ¶
type GitHubClient interface {
ValidateRepositoryURL(repoURL string) error
GenerateInstallationToken(ctx context.Context, repoURL string) (*github.InstallationToken, error)
}
GitHubClient interface defines the methods needed for GitHub operations
type WebhookManager ¶ added in v0.3.0
type WebhookManager struct {
*Client
}
WebhookManager handles GitHub webhook operations
func NewWebhookManager ¶ added in v0.3.0
func NewWebhookManager(client *Client) *WebhookManager
NewWebhookManager creates a new webhook manager
func (*WebhookManager) CreateWebhook ¶ added in v0.3.0
func (w *WebhookManager) CreateWebhook(ctx context.Context, repoURL, webhookURL, secret string, events []string) (*github.Hook, error)
CreateWebhook creates a new webhook in the GitHub repository
func (*WebhookManager) DeleteWebhook ¶ added in v0.3.0
DeleteWebhook deletes a webhook
func (*WebhookManager) GetWebhook ¶ added in v0.3.0
func (w *WebhookManager) GetWebhook(ctx context.Context, repoURL string, hookID int64) (*github.Hook, error)
GetWebhook retrieves a webhook by ID
Click to show internal directories.
Click to hide internal directories.