Packages
This construct returns the currently active SES receipt RuleSet, or creates one. This enables you to add rules to it.
CloudFront invalidations are very error prone, making it hard to invalidate distributions reliably. This construct aims to solve this problem by using a step function which is triggered on stack update, and uses exponential backoff to retry the invalidation. Inspired by aws/aws-cdk#15891 (comment).
Allows you to share values between stack across regions and accounts.
This construct creates a truly globally available API where code executes at the edge. Because changes take a long time to propagate to all edge locations, there is a devMode
flag which will instead deploy your API to a HTTP API. This is compatible with hotswapping, so cdk watch
works very well. In order to make it easy to develop APIs which handle both event formats and work around the environment variable limitation, I recommend you use the lightweight request wrapper @reapit-cdk/edge-api-sdk which normalises the event format and offers some extra helpers.
Add a swagger endpoint to your EdgeAPI
This construct sets up everything necessary to receive email. The emails get stored in a dynamodb table, queryable by recipient. This is designed to be used in end-to-end tests, with the @reapit-cdk/email-receiver-client helper library.
This construct creates and manages a Microsoft Entra ID Application
Creates a product in the organisations service
Creates a KMS key and replicates it to the desired regions. Useful when replicating secrets across regions.
Creates a Secret and replicates it across the given regions. Requires a ReplicatedKey be passed in.
This construct allows you to IaC your service quotas
This construct returns the given Cognito UserPool's UserPoolDomain, or creates one. This resolves an issue with AWS::Cognito::UserPoolDomain, since that will fail if one already exists.
This construct returns a wildcard certificate valid for subdomains of the given domain names, creating and validating on if it doesn't exist. It supports cross-account DNS validation, you can pass in arns of roles from other accounts and it'll assume them whilst doing the Route53 updates.
Packages
This module helps write custom resource handlers. It's designed to work with the Custom Resource Provider Framework. It accepts an object which contains event handlers for onCreate
, and optionally, onUpdate
, and onDelete
. Anything returned from onCreate
and onUpdate
is returned as data attributes on the resulting custom resource.
Provides convenience wrappers for accepting and responding to @reapit-cdk/edge-api lambda requests.
This module helps you write tests which rely on receiving emails. Once you have set up @reapit-cdk/email-receiver, this module helps you interact with the dynamodb table it creates. You'll have to export the table arn and domain name from your stack and import them to be used here, using something like this.
Types for @reapit-cdk/email-receiver and client.
Minimal Sentry SDK
Packages
@reapit-cdk eslint config.
Generates package readmes.
Easily run integration tests for CDK constructs using Jest. On successful test suite run, snapshots the stack which gets stored in your repo alongside the test. Subsequent test runs will diff the stack against the snapshot, and only run the tests if something changes.
tsconfig for @reapit-cdk.
Easily build @reapit-cdk constructs and custom resource lambdas.