cdk-eventbridge-partner-processors
Project description
Eventbridge SaaS Partner fURLs
This CDK Construct library provides CDK constructs for the 1st-party (i.e. developed by AWS) lambda fURL webhook receivers for:
- GitHub
- Stripe
- Twilio
Usage Examples (Simplified)
These examples are consistent for all 3 primary exported constructs of this library:
GitHubEventProcessor
TwilioEventProcessor
StripeEventProcessor
Note: Click on the above
View on Construct Hub
button to view auto-generated examples in Python/Go
Typescript
import { GitHubEventProcessor } from 'cdk-eventbridge-partner-processors';
import { Stack, StackProps } from 'aws-cdk-lib';
import { Construct } from 'constructs';
import { EventBus } from 'aws-cdk-lib/aws-events';
import { Secret } from 'aws-cdk-lib/aws-secretsmanager';
export class MyStackWithABetterName extends Stack {
constructor(scope: Construct, id: string, props: StackProps) {
super(scope, id, props);
// This library has no opinion on how you reference your EventBus,
// It just needs to fulfill the IEventBus protocol
const myEventBus = new EventBus(this, 'TheBestBusEver', {
eventBusName: 'TheGreatestBus'
});
// This library has no opinion on how you reference your secret,
// It just needs to fulfill the ISecret protocol
const mySecret = Secret.fromSecretNameV2(this, 'MyNuclearCodeSecret', '/home/recipes/icbm')
// Function will automatically receive permission to:
// 1. Post events to the given bus
// 2. Read the given secret
const githubEventProcessor = new GitHubEventProcessor(this, 'GitHubProcessor', {
eventBus: myEventBus,
webhookSecret: mySecret,
lambdaInvocationAlarmThreshold: 2000,
})
}
}
Golang
package main
import (
partner "github.com/a-bigelow/cdk-eventbridge-partner-processors-go"
"github.com/aws/aws-cdk-go/awscdk/v2"
"github.com/aws/aws-cdk-go/awscdk/v2/awsevents"
"github.com/aws/constructs-go/constructs/v10"
"github.com/aws/jsii-runtime-go"
)
type ClusterStackProps struct {
awscdk.StackProps
}
func NewClusterStack(scope constructs.Construct, id string, props *ClusterStackProps) awscdk.Stack {
var sprops awscdk.StackProps
if props != nil {
sprops = props.StackProps
}
stack := awscdk.NewStack(scope, &id, &sprops)
// The code that defines your stack goes here
eventProps := awsevents.EventBusProps{EventBusName: jsii.String("name")}
eventBus := awsevents.NewEventBus(stack, jsii.String("id"), &eventProps)
secret := secretsmanager.secret.fromSecretNameV2(scope, jsii.String("secret"), jsii.String("secretName"))
partnerProcessor := partner.GithubEventProcessor{
EventBus: eventBus,
WebhookSecret: secret,
LambdaInvocationAlarmThreshold: 2000,
}
_ = partner.NewGitHubEventProcessor(stack, jsii.String("id"), partnerProcessor)
return stack
}
Disclaimer
:warning: The Lambda Functions that handle the actual event processing in this Library are owned and maintained by Amazon Web Services. This CDK Construct library provides a thin deployment wrapper for these functions. Changes made to the S3 location of the functions will break this library. Until I have a way to deterministically track where these things are, please raise an issue if you have reason to believe that the functions have moved.
AWS Documentation
See here for additional information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file a-bigelow.cdk-eventbridge-partner-processors-0.0.420.tar.gz
.
File metadata
- Download URL: a-bigelow.cdk-eventbridge-partner-processors-0.0.420.tar.gz
- Upload date:
- Size: 44.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c3d44591d30d2bb47ec3a884e10da8604bba25cf3d569475bc728601c2c385b |
|
MD5 | b6fb2cf16585087a7e3e067645082fd6 |
|
BLAKE2b-256 | c4583ff92bee0880186d4e4d539d017042509d77ddf7574ff0267219c3ebda77 |
File details
Details for the file a_bigelow.cdk_eventbridge_partner_processors-0.0.420-py3-none-any.whl
.
File metadata
- Download URL: a_bigelow.cdk_eventbridge_partner_processors-0.0.420-py3-none-any.whl
- Upload date:
- Size: 42.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c5ce1f11b9c49c12718037973f37e33e0d98d8130b64a11d04ef37e18d3db261 |
|
MD5 | 0cbb5669e86c832ef2028566b53d46a2 |
|
BLAKE2b-256 | b26ea6751a821cf8fcc8652910b83e7f58767f32c708a0e828350813e20027dc |