Skip to content

Conversation

ilyaluk
Copy link
Contributor

@ilyaluk ilyaluk commented Sep 1, 2025

  • bump go to 1.25, switch to go tool
  • Add webhook configuration with URL, HTTP method, and send body options
  • Implement webhook publisher with deduplication using message fingerprints
  • Support for different HTTP methods and optional JSON body sending
  • Update processor to initialize webhook publisher when configured

This PR is partially Claude code-generated with manual review.

1.25 also required bump of mock package
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements a webhook publisher feature for the alerting system, allowing alerts to be sent to HTTP endpoints with configurable options. The implementation includes comprehensive deduplication, multiple HTTP method support, and proper error handling.

  • Adds webhook configuration with URL, HTTP method, and optional JSON body sending
  • Implements webhook publisher with message fingerprint-based deduplication
  • Updates Go toolchain to 1.25 and switches from mockgen to go tool mockgen

Reviewed Changes

Copilot reviewed 12 out of 13 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
types/types.go Adds AlertmanagerWebhook struct for webhook payload format
publisher/webhook.go Core webhook publisher implementation with HTTP client abstraction
publisher/webhook_test.go Comprehensive test suite covering various webhook scenarios
config/webhook.go Webhook configuration structure with enabled check
config/config.go Integrates webhook config into main configuration
processor/processor.go Initializes webhook publisher with URL-based namespacing
cmd/lambda.go Adds CLI flags and environment variable handling for webhook config
go.mod Updates Go version to 1.25 and mock dependency
publisher/slack.go Updates mockgen command to use go tool
publisher/pagerduty.go Updates mockgen command to use go tool
publisher/publisher.go Adds webhook expiry timeout constant
mock/publisher/webhook.go Generated mock for HTTP client interface

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

- Add webhook configuration with URL, HTTP method, and send body options
- Implement webhook publisher with deduplication using message fingerprints
- Support for different HTTP methods and optional JSON body sending
- Update processor to initialize webhook publisher when configured
@ilyaluk ilyaluk force-pushed the ilya/webhook-publisher branch from 18fb155 to bc7f754 Compare September 1, 2025 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant