Skip to content

generic webhook receiver #4486

@krancour

Description

@krancour

Broken out of #4150

Add a generic webhook receiver that can use user-defined expressions to parse arbitrary JSON request payloads to identify the request's repository of origin. This information can be used to refresh a Warehouse, prompting an artifact discovery cycle.

Such a receiver will be useful for integrating Kargo with lesser-known platforms for which we haven't/won't build specific receivers. It will also be useful for cases such as ECR or GAR, which do not natively support notifying external systems of pushed artifacts via webhooks. Users can jury rig something that accomplishes this, but (to the best of my knowledge) there is no official, or even de facto, standard for such payloads, meaning Kargo will require the flexibility to parse whatever users elect to send.

It is, however, essential that the solution not be myopically focused on refreshing Warehouses in response to artifact push events. We know webhooks will inevitably be used for other things as well and we will not want myopic choices made here and now to force compromises or breaking changes when adding such features.

Metadata

Metadata

Assignees

Labels

area/external-webhooksAffects the server that responds to webhooks originating from external systemskind/enhancementAn entirely new featureneeds discussionA maintainer explicitly requests no action be taken without further discussionpriority/highNeeds to be addressed sooner rather than latersize/medium

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions