diff --git a/alb-cognito-lambda/example-pattern.json b/alb-cognito-lambda/example-pattern.json
deleted file mode 100644
index e991cd7e2..000000000
--- a/alb-cognito-lambda/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "ALB, Cognito & Lambda Integration",
- "description": "Create an ALB, Cognito & Lambda integration to fetch regional metrics",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern explains how to deploy a SAM application that integrates an Application Load Balancer, Cognito and Lambda to fetch Lambda regional metrics.",
- "We will be deploying an Application load balancer in front of Lambda function. Access to Lambda function would be given after authenticating user via AWS Cognito",
- "Once the authentication is successful, User will be redirected to an HTML page which will display list of Lambda's regional metrics"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-cognito-lambda",
- "templateURL": "serverless-patterns/alb-cognito-lambda",
- "projectFolder": "alb-cognito-lambda",
- "templateFile": "alb-cognito-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Authenticate users using an Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/listener-authenticate-users.html"
- },
- {
- "text": "Using AWS Lambda with an Application Load Balancer",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-alb.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Jainam Shah",
- "image": "https://drive.google.com/file/d/19NrbeT5LdQRAqnOGdEXsPZKvWph3Ba8U/view?usp=sharing",
- "bio": "Technical Account Manager @ AWS",
- "linkedin": "https://www.linkedin.com/in/jainamshah92",
- "twitter": "@imJshah92"
- }
- ]
-}
diff --git a/alb-lambda-cdk/example-pattern.json b/alb-lambda-cdk/example-pattern.json
deleted file mode 100644
index 98b94d89f..000000000
--- a/alb-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using CDK",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in CDK."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-cdk",
- "templateURL": "serverless-patterns/alb-lambda-cdk",
- "projectFolder": "alb-lambda-cdk",
- "templateFile": "alb-lambda-cdk/alb-lambda-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-pulumi-cs/example-pattern.json b/alb-lambda-pulumi-cs/example-pattern.json
deleted file mode 100644
index 179a0de5e..000000000
--- a/alb-lambda-pulumi-cs/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Pulumi",
- "language": ".NET",
- "level": "200",
- "framework": "Pulumi",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in .NET using Pulumi."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-pulumi-cs",
- "templateURL": "serverless-patterns/alb-lambda-pulumi-cs",
- "projectFolder": "alb-lambda-pulumi-cs",
- "templateFile": "alb-lambda-pulumi-cs/Program.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "pulumi up"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: pulumi destroy
."
- ]
- },
- "authors": [
- {
- "name": "Piers Karsenbarg",
- "image": "https://avatars.githubusercontent.com/u/109047",
- "bio": "Solutions Engineer at Pulumi",
- "linkedin": "piers-karsenbarg",
- "twitter": "@pierskarsenbarg"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-pulumi-go/example-pattern.json b/alb-lambda-pulumi-go/example-pattern.json
deleted file mode 100644
index 02a73c5ab..000000000
--- a/alb-lambda-pulumi-go/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Pulumi",
- "language": "Go",
- "level": "200",
- "framework": "Pulumi",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in Go using Pulumi."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-pulumi-go",
- "templateURL": "serverless-patterns/alb-lambda-pulumi-go",
- "projectFolder": "alb-lambda-pulumi-go",
- "templateFile": "alb-lambda-pulumi-go/main.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "pulumi up"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: pulumi destroy
."
- ]
- },
- "authors": [
- {
- "name": "Piers Karsenbarg",
- "image": "https://avatars.githubusercontent.com/u/109047",
- "bio": "Solutions Engineer at Pulumi",
- "linkedin": "piers-karsenbarg",
- "twitter": "@pierskarsenbarg"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-pulumi-js/example-pattern.json b/alb-lambda-pulumi-js/example-pattern.json
deleted file mode 100644
index feb119c81..000000000
--- a/alb-lambda-pulumi-js/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Pulumi",
- "language": "Node.js",
- "level": "200",
- "framework": "Pulumi",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in Javascript using Pulumi."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-pulumi-js",
- "templateURL": "serverless-patterns/alb-lambda-pulumi-js",
- "projectFolder": "alb-lambda-pulumi-js",
- "templateFile": "alb-lambda-pulumi-js/index.js"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "pulumi up"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: pulumi destroy
."
- ]
- },
- "authors": [
- {
- "name": "Piers Karsenbarg",
- "image": "https://avatars.githubusercontent.com/u/109047",
- "bio": "Solutions Engineer at Pulumi",
- "linkedin": "piers-karsenbarg",
- "twitter": "@pierskarsenbarg"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-pulumi-ts/example-pattern.json b/alb-lambda-pulumi-ts/example-pattern.json
deleted file mode 100644
index fe336229e..000000000
--- a/alb-lambda-pulumi-ts/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Pulumi",
- "language": "TypeScript",
- "level": "200",
- "framework": "Pulumi",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in Typescript using Pulumi."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-pulumi-ts",
- "templateURL": "serverless-patterns/alb-lambda-pulumi-ts",
- "projectFolder": "alb-lambda-pulumi-ts",
- "templateFile": "alb-lambda-pulumi-ts/index.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "pulumi up"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: pulumi destroy
."
- ]
- },
- "authors": [
- {
- "name": "Piers Karsenbarg",
- "image": "https://avatars.githubusercontent.com/u/109047",
- "bio": "Solutions Engineer at Pulumi",
- "linkedin": "piers-karsenbarg",
- "twitter": "@pierskarsenbarg"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-pulumi-yaml/example-pattern.json b/alb-lambda-pulumi-yaml/example-pattern.json
deleted file mode 100644
index 3ea15e72f..000000000
--- a/alb-lambda-pulumi-yaml/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Pulumi",
- "language": "YAML",
- "level": "200",
- "framework": "Pulumi",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in YAML using Pulumi."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-pulumi-yaml",
- "templateURL": "serverless-patterns/alb-lambda-pulumi-yaml",
- "projectFolder": "alb-lambda-pulumi-yaml",
- "templateFile": "alb-lambda-pulumi-ts/Pulumi.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "pulumi up"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: pulumi destroy
."
- ]
- },
- "authors": [
- {
- "name": "Piers Karsenbarg",
- "image": "https://avatars.githubusercontent.com/u/109047",
- "bio": "Solutions Engineer at Pulumi",
- "linkedin": "piers-karsenbarg",
- "twitter": "@pierskarsenbarg"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-rust/example-pattern.json b/alb-lambda-rust/example-pattern.json
deleted file mode 100644
index 29404669b..000000000
--- a/alb-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to AWS Lambda",
- "description": "This pattern creates an Application Load Balancer and an AWS Lambda function as target.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Application Load Balancer with an AWS Lambda function written in Rust as target. The function logs the incoming API event and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-rust",
- "templateURL": "serverless-patterns/alb-lambda-rust",
- "projectFolder": "alb-lambda-rust",
- "templateFile": "alb-lambda-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://aws.amazon.com/elasticloadbalancing"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/alb-lambda-serverless/example-pattern.json b/alb-lambda-serverless/example-pattern.json
deleted file mode 100644
index 0c22aa57b..000000000
--- a/alb-lambda-serverless/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as a target",
- "description": "Create an Application Load Balancer with Lambda as target using Serverless Framework",
- "language": "Node.js",
- "architectureURL": "",
- "videoId": "",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "alb",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern registers the lambda function as the target for the Application Load Balancer using the serverless framework.",
- "",
- "When the load balancer endpoint is hit in the browser, if the specified URL (`/hello`) path matches, it triggers the lambda function & the file (hello) is downloaded in your local system with the output from lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-serverless",
- "templateURL": "serverless-patterns/alb-lambda-serverless",
- "projectFolder": "alb-lambda-serverless",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Using AWS Lambda with an Application Load Balancer",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-alb.html"
- },
- {
- "text": "Lambda functions as targets - Elastic Load Balancing",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Anjali Modi, Software Engineer, Distinction-Dev",
- "name": "Anjali Modi",
- "bio": "Anjali Modi is a Software Engineer working for developing Serverless solutions at Distinction-Dev, India",
- "linkedin":"https://www.linkedin.com/in/anjali-modi-068045119/",
- "imageURL": "https://1.gravatar.com/avatar/51f84b006e95184c3943b4d5e17b1ac3"
- }
- ]
-}
\ No newline at end of file
diff --git a/alb-lambda-terraform/example-pattern.json b/alb-lambda-terraform/example-pattern.json
deleted file mode 100644
index 4a6a55fe3..000000000
--- a/alb-lambda-terraform/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Application Load Balancer with Lambda as target",
- "description": "Create an Application Load Balancer with Lambda as target using Terraform",
- "language": "TypeScript",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create an Application Load Balancer with AWS Lambda as target.",
- "Implemented in Terraform."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/alb-lambda-terraform",
- "templateURL": "serverless-patterns/alb-lambda-terraform",
- "projectFolder": "alb-lambda-terraform",
- "templateFile": "alb-lambda-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Application Load Balancer",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html"
- },
- {
- "text": "ALB - Lambda target",
- "link": "https://docs.aws.amazon.com/elasticloadbalancing/latest/application/lambda-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [
- {
- "name": "Sumit Bhati",
- "image": "https://avatars.githubusercontent.com/u/139027745",
- "bio": "I am a Customer Solutions Manager at AWS"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-api-key/example-pattern.json b/apigw-api-key/example-pattern.json
deleted file mode 100644
index 6f0423ece..000000000
--- a/apigw-api-key/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon API Gateway with an API Key",
- "description": "Create a REST API Gateway with an API Key associated with a Usage Plan",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "An API Key is created and added to a Usage Plan (no throttling, no quota). This Usage Plan is then associated with the Prod stage of a REST API.",
- "The GET method of this REST API is configured to require an API Key associated with the Usage Plan.",
- "If the API key is provided, then API Gateway allows the request and sends it to the Lambda integration.",
- "If the API is not provided, API returns a 403 Forbidden."
-
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-api-key",
- "templateURL": "serverless-patterns/apigw-api-key",
- "projectFolder": "apigw-api-key",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "REST API with an API Key",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-setup-api-key-with-console.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-caching-sam/example-pattern.json b/apigw-caching-sam/example-pattern.json
deleted file mode 100644
index 474636511..000000000
--- a/apigw-caching-sam/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon API Gateway with caching enable",
- "description": "Create an API Gateway REST API with Caching enabled using AWS SAM",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Amazon API Gateway has the ability to create and seamlessly utilize caching clusters in front of your API Gateway REST APIs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-caching-sam",
- "templateURL": "serverless-patterns/apigw-caching-sam",
- "projectFolder": "apigw-caching-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway Caching",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-client-certificate/example-pattern.json b/apigw-client-certificate/example-pattern.json
deleted file mode 100644
index 8aca749e4..000000000
--- a/apigw-client-certificate/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway with a Client Certificate",
- "description": "Create a REST API Gateway with a Client Certificate.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys an Amazon API Gateway REST API endpoint that uses a Client Certificate that will be used to call your integration endpoints in the 'Prod' Stage."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-client-certificate",
- "templateURL": "serverless-patterns/apigw-client-certificate",
- "projectFolder": "apigw-client-certificate",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "REST API with a Client Certificate",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-client-side-ssl-authentication.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-cloudwatch/example-pattern.json b/apigw-cloudwatch/example-pattern.json
deleted file mode 100644
index 8008de911..000000000
--- a/apigw-cloudwatch/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon CloudWatch",
- "description": "The pattern creates an Amazon API Gateway REST API with access logging to Amazon CloudWatch enabled.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates logging access data from API Gateway to Amazon CloudWatch. This data can help debug latency issues, integration issues, WAF issues and more."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-cloudwatch",
- "templateURL": "serverless-patterns/apigw-cloudwatch",
- "projectFolder": "apigw-cloudwatch"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Troubleshooting Amazon API Gateway with enhanced observability variables",
- "link": "https://aws.amazon.com/blogs/compute/troubleshooting-amazon-api-gateway-with-enhanced-observability-variables/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
diff --git a/apigw-cors-nonproxy/example-pattern.json b/apigw-cors-nonproxy/example-pattern.json
deleted file mode 100644
index af55c3168..000000000
--- a/apigw-cors-nonproxy/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway REST API with Lambda non-proxy integration and CORS enabled",
- "description": "API Gateway REST API with Lambda non-proxy integration and CORS enabled for GET and OPTIONS methods",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "A REST API is created that has a GET method with a Lambda function integration.",
- "The API also has an OPTIONS method with a MOCK integration",
- "CORS is enabled for both GET and OPTIONS method i.e. 'Access-Control-Allow-Methods', 'Access-Control-Allow-Headers', 'Access-Control-Allow-Origin' headers are returned."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-cors-nonproxy",
- "templateURL": "serverless-patterns/apigw-cors-nonproxy",
- "projectFolder": "apigw-cors-nonproxy",
- "templateFile": "apigw-cors-nonproxy/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Enabling CORS for a REST API resource",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html"
- },
- {
- "text": "Testing CORS",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-test-cors.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Noor Bari",
- "image": "https://media.licdn.com/dms/image/D4D03AQF-Eqdxb5EgDg/profile-displayphoto-shrink_800_800/0/1681412120461?e=1687392000&v=beta&t=4PQGZ9dxklC2oRdf_vdJxQH6UNkmqWScVMga9H4C3Qw",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/noor-bari-521251206/"
- }
- ]
-}
diff --git a/apigw-cors-proxy/example-pattern.json b/apigw-cors-proxy/example-pattern.json
deleted file mode 100644
index d5b8a4922..000000000
--- a/apigw-cors-proxy/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "API Gateway REST API with Lambda proxy integration and CORS enabled",
- "description": "API Gateway REST API with Lambda proxy integration which is responsible for returning the Access-Control-Allow-Origin and Access-Control-Allow-Headers headers",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "A REST API is created that has a GET method with a Lambda integration where API Gateway returns the CORS headers",
- "The API also has an OPTIONS method with a Lambda proxy integration where the backend Lambda function returns the CORS headers"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-cors-proxy",
- "templateURL": "serverless-patterns/apigw-cors-proxy",
- "projectFolder": "apigw-cors-proxy",
- "templateFile": "apigw-cors-proxy/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Enabling CORS for a REST API resource",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html"
- },
- {
- "text": "Testing CORS",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-test-cors.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Noor Bari",
- "image": "https://media.licdn.com/dms/image/D4D03AQF-Eqdxb5EgDg/profile-displayphoto-shrink_800_800/0/1681412120461?e=1687392000&v=beta&t=4PQGZ9dxklC2oRdf_vdJxQH6UNkmqWScVMga9H4C3Qw",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/noor-bari-521251206/"
- }
- ]
-}
diff --git a/apigw-custom-domain-edge/example-pattern.json b/apigw-custom-domain-edge/example-pattern.json
deleted file mode 100644
index 9257b81d1..000000000
--- a/apigw-custom-domain-edge/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Amazon API Gateway Edge Custom Domain",
- "description": "Create Edge Custom Domain in API Gateway",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys an Amazon API Gateway Edge Custom Domain Name.",
- "The Edge Custom Domain Name is mapped to a Stage in an existing API Gateway. Additionally, a Route53 A record is created to map the Edge Custom Domain Name (i.e. example.com) to the Target Domain Name created by API Gateway (i.e. d-abcde12345.execute-api.ap-southeast-2.amazonaws.com).",
- "As prerequisites for this pattern, you must have:",
- "* A valid certificate in ACM (Amazon Certificate Manager) in the us-east-1 Region that covers the namespace of the domain you would like to use (i.e. *.mydomain.com).",
- "* A public Hosted Zone in Route 53 with the domain name you would like to use (i.e. mydomain.com).",
- "* An API Gateway API (REST, HTTP or Websockets) and a deployed Stage within this API."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-custom-domain-edge",
- "templateURL": "serverless-patterns/apigw-custom-domain-edge",
- "projectFolder": "apigw-custom-domain-edge",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway Edge Custom Domain",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-edge-optimized-custom-domain-name.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-custom-domain-regional/example-pattern.json b/apigw-custom-domain-regional/example-pattern.json
deleted file mode 100644
index 6c15b3d0a..000000000
--- a/apigw-custom-domain-regional/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Amazon API Gateway Regional Custom Domain",
- "description": "Create Regional Custom Domain in API Gateway",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys an Amazon API Gateway Regional Custom Domain Name.",
- "The Regional Custom Domain Name is mapped to a Stage in an existing API Gateway. Additionally, a Route53 A record is created to map the Regional Custom Domain Name (i.e. example.com) to the Target Domain Name created by API Gateway (i.e. d-abcde12345.execute-api.ap-southeast-2.amazonaws.com).",
- "As prerequisites for this pattern, you must have:",
- "* A valid certificate in ACM (Amazon Certificate Manager) that covers the namespace of the domain you would like to use (i.e. *.mydomain.com).",
- "* A public Hosted Zone in Route 53 with the domain name you would like to use (i.e. mydomain.com).",
- "* An API Gateway API (REST, HTTP or Websockets) and a deployed Stage within this API."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-custom-domain-regional",
- "templateURL": "serverless-patterns/apigw-custom-domain-regional",
- "projectFolder": "apigw-custom-domain-regional",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway Regional Custom Domain",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-regional-api-custom-domain-create.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-custom-resource-policy/example-pattern.json b/apigw-custom-resource-policy/example-pattern.json
deleted file mode 100644
index 67b1f7d9c..000000000
--- a/apigw-custom-resource-policy/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "API Gateway with a custom resource policy limiting responses to a date range",
- "description": "Creates an API Gateway REST endpoint with a resource policy. The resource policy contains a custom policy that limits access to the endpoint to certain date ranges.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Using resource policies, this endpoint will only accept requests between certain dates. This is just an example of many conditions that can be applied to limit access to API Gateway endpoints with resource policies"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-custom-resource-policy",
- "templateURL": "serverless-patterns/apigw-custom-resource-policy",
- "projectFolder": "apigw-custom-resource-policy"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway resource policy statements",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-resourcepolicystatement.html"
- },
- {
- "text": "Resource policy condition operators",
- "link": "https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html"
- },
- {
- "text": "Resource policy condition keys",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies-aws-condition-keys.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
diff --git a/apigw-data-validation/example-pattern.json b/apigw-data-validation/example-pattern.json
deleted file mode 100644
index a9d5bb721..000000000
--- a/apigw-data-validation/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "API Gateway data validation",
- "description": "This pattern creates an Amazon API Gateway that handles simple data validation at the endpoint without invoking the Lambda function when the data validation fails.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The data model is declared in the API Gateway resource. The Lambda function then requires the request body to be validated against this model."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-data-validation",
- "templateURL": "serverless-patterns/apigw-data-validation",
- "projectFolder": "apigw-data-validation"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway model example",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-api.html#sam-api-models"
- },
- {
- "text": "JSON Schema",
- "link": "https://datatracker.ietf.org/doc/html/draft-zyp-json-schema-04#section-4.1"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
diff --git a/apigw-ddb-openapi-crud/example-pattern.json b/apigw-ddb-openapi-crud/example-pattern.json
deleted file mode 100644
index 75c8bb6ff..000000000
--- a/apigw-ddb-openapi-crud/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-
-{
- "title": "Amazon API Gateway to Amazon DynamoDB CRUD aplication using OpenAPI",
- "description": "Create a simple CRUD application with no compute",
- "language": "OpenAPI",
- "level": "400",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Amazon API Gateway has the ability to transform incoming requests using Apach Velocity Templating Language (VTL) templates. Using vtl, this application builds a CRUD app to save a simple data object to a DynamoDB database."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-ddb-openapi-crud",
- "templateURL": "serverless-patterns/apigw-ddb-openapi-crud",
- "projectFolder": "apigw-ddb-openapi-crud",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway VTL",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/rest-api-data-transformations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-domain-edge-lambda/example-pattern.json b/apigw-domain-edge-lambda/example-pattern.json
deleted file mode 100644
index 5092ce2cf..000000000
--- a/apigw-domain-edge-lambda/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Regional API with Edge-Optimized domain name to Lambda",
- "description": "Create a Regional API with Edge-Optimized domain name with a Lambda integration",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST regional API with an edge-Optimized domain name and a Lambda integration.",
- "You will need : a route53 hosted zone, an ACM Certificate in the US-EAST-1 region.",
- "The domain name choosen needs to match or be a subdomain of the domain name on the certificate"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-domain-edge-lambda",
- "templateURL": "serverless-patterns/apigw-domain-edge-lambda",
- "projectFolder": "apigw-domain-edge-lambda",
- "templateFile": "apigw-domain-edge-lambda/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating a public hosted zone",
- "link": "https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingHostedZone.html"
- },
- {
- "text": "Routing traffic to an Amazon API Gateway API by using your domain name",
- "link": "https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html"
- },
- {
- "text": "Creating an edge-optimized custom domain name",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-edge-optimized-custom-domain-name.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Enter the ARN of the certificate (which is in us-east-1) and the custom domain name in the parameters of the template.",
- "Deploy the template",
- "Create a new record in your Hosted zone in route53 with an alias to the API Edge-Optimized endpoint",
- "Paste the custom domain name into a browser to make requests"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer for Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-dynamodb-lambda-scheduler-sqs-cdk/example-pattern.json b/apigw-dynamodb-lambda-scheduler-sqs-cdk/example-pattern.json
deleted file mode 100644
index 2833b85ea..000000000
--- a/apigw-dynamodb-lambda-scheduler-sqs-cdk/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Delayed processing of Dynamodb stream with EventBridge Scheduler",
- "description": "Create a workflow using CDK to process Dynamodb stream at scheduled time window.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates a sample to delay processing of Dynamodb stream with EventBridge Scheduler. EventBridge Scheduler invokes a target one-time or at regular intervals defined by a cron or rate expression. This service provides scheduling functionality independent of Event buses and rules. You can create a schedule to invoke targets such as Amazon SQS, or AWS Batch.",
- "Amazon DynamoDB streams are used to deliver event payload to the handlers in near real time. This pattern will help customers with usecases such as process stream events at a predefined time window, as well as triggring one target AWS service from EventBridge Scheduler.",
- "With Amazon EventBrdige Schedule you can invoke more than 270 AWS services and over 6,000 API operations. Without the need to provision and manage infrastructure, or integrate with multiple services, EventBridge Scheduler provides you with the ability to deliver schedules at scale and reduce maintenance costs.",
- "This pattern deploys one Amazon APIGateway, two AWS Lambda Functions, one Amazon DynamoDB Stream, one Amazon SQS queue, and two Amazon EventBridge Schedule Groups."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-dynamodb-lambda-scheduler-sqs-cdk",
- "templateURL": "serverless-patterns/apigw-dynamodb-lambda-scheduler-sqs-cdk",
- "projectFolder": "apigw-dynamodb-lambda-scheduler-sqs-cdk",
- "templateFile": "apigw-dynamodb-lambda-scheduler-sqs-cdk/AwsDynamodbLambdaSchedulerLambdaSampleStack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Using templated targets",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/managing-targets-templated.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Shashank Shrivastava",
- "image": "https://media.licdn.com/dms/image/D5603AQGrfCgpj_j3mw/profile-displayphoto-shrink_400_400/0/1673343619283?e=1684972800&v=beta&t=SoHAsTjGcrIlf9ToRrNX64I71rhp4MH0Kd9hrTk1bqw",
- "bio": "Sr. Cloud Application Architect at Amazon Web Services.",
- "linkedin": "shashank-shrivastava-85788b38/",
- "twitter": "@shashanksaid"
- }
- ]
-}
diff --git a/apigw-ec2/example-pattern.json b/apigw-ec2/example-pattern.json
deleted file mode 100644
index 620922934..000000000
--- a/apigw-ec2/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Deploy a NGINX server on private EC2 server and proxy it via REST API",
- "description": "Create a REST API which acts as a proxy for a NGINX server hosted on a Amazon Elastic Compute Cloud (Amazon EC2)",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern allows users to quickly deploy a REST API, Network Load Balancer and NGINX server on a EC2 machine in their VPC.",
- "The pattern uses Amazon API Gateway with VPC Link to securely connect to the NLB which routes traffic to EC2 instances running NGINX server.",
- "By using this pattern, users can ensure that their private resources are not exposed to the public internet while still allowing secure access through API Gateway.",
- "This pattern can be useful in scenarios where there is a need to integrate with private resources, such as internal databases or applications, while also maintaining a high level of security."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-ec2",
- "templateURL": "serverless-patterns/apigw-ec2",
- "projectFolder": "apigw-ec2",
- "templateFile": "apigw-ec2/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial - Build a REST API with API Gateway private integration",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-with-private-integration.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name "
- ]
- },
- "authors": [
- {
- "name": "Shivam Rajawat",
- "image": "https://shivamrajawat.s3.amazonaws.com/shivamrajawat.jpg",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS and I love to solve complex problems.",
- "linkedin": "shivam-rajawat-a42b68124"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-execution-access-logs/example-pattern.json b/apigw-execution-access-logs/example-pattern.json
deleted file mode 100644
index 140d5eb03..000000000
--- a/apigw-execution-access-logs/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway REST API to AWS CloudWatch",
- "description": "Create a REST API that has CloudWatch execution and access logs enabled.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "A REST API is created that has an IAM role with managed policy 'AmazonAPIGatewayPushToCloudWatchLogs' which allows API Gateway to write CloudWatch logs to your account.",
- "In the API stage, CloudWatch execution logs are enabled with INFO Log level selected as well as custom access logging to generate execution and access logs for all requests.",
- "The API has a AWS Lambda function integration which returns 'Hello from Lambda' in response."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-execution-access-logs",
- "templateURL": "serverless-patterns/apigw-execution-access-logs",
- "projectFolder": "apigw-execution-access-logs",
- "templateFile": "apigw-execution-access-logs/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Setting up CloudWatch logging for a REST API in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-logging.html"
- },
- {
- "text": "AmazonAPIGatewayPushToCloudWatchLogs",
- "link": "https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonAPIGatewayPushToCloudWatchLogs.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Noor Bari",
- "image": "https://media.licdn.com/dms/image/D4D03AQF-Eqdxb5EgDg/profile-displayphoto-shrink_800_800/0/1681412120461?e=1687392000&v=beta&t=4PQGZ9dxklC2oRdf_vdJxQH6UNkmqWScVMga9H4C3Qw",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/noor-bari-521251206/"
- }
- ]
- }
diff --git a/apigw-http-api-eventbridge-java/example-pattern.json b/apigw-http-api-eventbridge-java/example-pattern.json
deleted file mode 100644
index cf546e448..000000000
--- a/apigw-http-api-eventbridge-java/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway HTTP API to Amazon EventBridge",
- "description": "Create an HTTP API endpoint that directly integrates with Amazon EventBridge.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API Gateway HTTP API endpoint.",
- "The endpoint uses service integrations to directly connect to Amazon EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-eventbridge-java",
- "templateURL": "serverless-patterns/apigw-http-api-eventbridge-java",
- "projectFolder": "apigw-http-api-eventbridge-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with AWS service integrations for HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "@edjgeek"
- },
- {
- "name": "Steven Cook",
- "bio": "Snr Solutions Architect at AWS."
- }
- ]
-}
diff --git a/apigw-http-api-eventbridge-lambda-sls/example-pattern.json b/apigw-http-api-eventbridge-lambda-sls/example-pattern.json
deleted file mode 100644
index f20bb2ab9..000000000
--- a/apigw-http-api-eventbridge-lambda-sls/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "HTTP API Gateway to EventBridge",
- "description": "Create an HTTP API Gateway that sends events to EventBridge.",
- "language": "Node.js, TypeScript",
- "architectureURL": "",
- "videoId": "",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "apigatewayv2",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API gateway HTTP API endpoint. The endpoint uses service integrations to directly connect to Amazon EventBridge. ",
- "",
- "Once a new event is published to EventBridge \"WebApp\" custom event bus it is delivered to a Lambda function, which will simply log that event to EventLog. ",
- "Lambda function is written in TypeScript and deployed to ARM64 architecture for demo purposes."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-eventbridge-lambda-sls",
- "templateURL": "serverless-patterns/apigw-http-api-eventbridge-lambda-sls",
- "projectFolder": "apigw-http-api-eventbridge-lambda-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Dmitry Gulin, Modernization Architect, AWS",
- "name": "Dmitry Gulin",
- "bio": "Dmitry is a modernization architect for Professional Services at Amazon Web Services based in the US.",
- "imageURL": "https://www.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a?s=200"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-http-api-eventbridge-python/example-pattern.json b/apigw-http-api-eventbridge-python/example-pattern.json
deleted file mode 100644
index 28f15f00b..000000000
--- a/apigw-http-api-eventbridge-python/example-pattern.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "title": "Amazon API Gateway HTTP API to Amazon EventBridge",
- "description": "Create an Amazon API Gateway HTTP API connected to Amazon EventBridge.",
- "language": "Python",
- "architectureURL": "",
- "videoId": "",
- "level": "100",
- "framework": "CDK",
- "services": {
- "from": "apigatewayv2",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The CDK project creates an Amazon API gateway HTTP API endpoint. The endpoint uses service integrations to directly connect to Amazon EventBridge. An EventBridge rule sends all events to Cloudwatch Logs."
- ]
- },
- "deploy": {
- "text": [
- "python3 -m venv .venv",
- "source .venv/bin/activate",
- "pip install -r requirements.txt",
- "cdk deploy"
- ]
- },
- "gitHub": {
- "template": {
- "projectFolder": "apigw-http-api-eventbridge-python",
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-eventbridge-python",
- "templateURL": "apigw-http-api-eventbridge/apigw_http_api_eventbridge_stack.py",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-eventbridge-python/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- },
- {
- "text": "Choosing between REST APIs and HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vs-rest.html"
- },
- {
- "text": "Capturing client events using Amazon API Gateway and Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/capturing-client-events-using-amazon-api-gateway-and-amazon-eventbridge/"
- }
- ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["cdk destroy"]
- },
- "authors": [
- {
- "headline": "Presented by Cesar Izquierdo Tello, Cloud Engineer",
- "name": "Cesar Izquierdo Tello",
- "bio": "Cesar is a cloud engineer specialist on serverless architectures, based in the NL."
- }
- ]
-}
diff --git a/apigw-http-api-fifo-sqs-lambda-sns-sam/example-pattern.json b/apigw-http-api-fifo-sqs-lambda-sns-sam/example-pattern.json
deleted file mode 100644
index 6907acfc0..000000000
--- a/apigw-http-api-fifo-sqs-lambda-sns-sam/example-pattern.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon Fifo SQS Queue to AWS Lambda to Amazon SNS",
- "description": "Process HTTP Post requests using Lambda Fubction while maintaining the order of the messages",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern is designed to deploy an Amazon API Gateway HTTP API with a single route at \"/\"",
- "When the API Gateway receives a request from a client, it immediately sends the message to a FIFO (First-In-First-Out) queue.",
- "The FIFO queue ensures that messages are processed in the order they were received, maintaining strict ordering",
- "As the messages arrive in the FIFO queue, it automatically invokes a Lambda function responsible for message processing",
- "The Lambda function handles each message one by one in FIFO order.",
- "Depending on the use case, the Lambda may perform various actions, such as data processing, validation, or invoking other AWS services.",
-
- "Once the Lambda function has processed a message, it publishes the relevant information or processed data to an SNS (Simple Notification Service) standard topic.",
- "You can then Subscribe email addresses to the topic to be notified through the SNS topic, providing users with timely updates or notifications via email."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-fifo-sqs-lambda-sns-sam",
- "templateURL": "serverless-patterns/apigw-http-api-fifo-sqs-lambda-sns-sam",
- "projectFolder": "apigw-http-api-fifo-sqs-lambda-sns-sam",
- "templateFile": "apigw-http-api-fifo-sqs-lambda-sns-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Fifo SQS Queues",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html"
- },
- {
- "text": "Lambda sqs fifo trigger",
- "link": "https://aws.amazon.com/blogs/compute/new-for-aws-lambda-sqs-fifo-as-an-event-source/"
- }
- {
- "text": "Subscribe to an SNS topic",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-create-subscribe-endpoint-to-topic.html"
- }
-
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Xivutiso Makhubela",
- "image": "link-to-your-photo.jpg",
- "bio": "I am a Startups Solutions Architect at Amazon Web Services",
- "linkedin": "xivutiso"
- }
- ]
-}
diff --git a/apigw-http-api-lambda-dotnet-sam/example-pattern.json b/apigw-http-api-lambda-dotnet-sam/example-pattern.json
deleted file mode 100644
index 8854a4fe9..000000000
--- a/apigw-http-api-lambda-dotnet-sam/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "AWS API Gateway HTTP API to AWS Lambda w/ ASP.NET 6.0",
- "description": "Create an HTTP API to AWS Lambda w/ ASP.NET 6.0",
- "language": ".NET",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project shows how to use AWS SAM for an ASP.NET Core Web API project using a AWS Lambda function exposed through Amazon API Gateway.",
- "The function takes a request from an API Gateway Proxy or from an Application Load Balancer and converts that request into the classes the ASP.NET Core framework expects and then converts the response from the ASP.NET Core framework into the response body that API Gateway Proxy or Application Load Balancer understands."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-dotnet-sam",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-dotnet-sam",
- "projectFolder": "apigw-http-api-lambda-dotnet-sam",
- "templateFile": "apigw-http-api-lambda-dotnet-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Building Lambda functions with C#",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-csharp.html"
- },
- {
- "text": "ASP.NET Core Lambda NuGet Package",
- "link": "https://www.nuget.org/packages/Amazon.Lambda.AspNetCoreServer"
- },
- {
- "text": "More blueprints for .NET Lambdas",
- "link": "https://github.com/aws/aws-lambda-dotnet/tree/master/Blueprints"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo readme for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Empty the S3 bucket",
- "sam delete --stack-name STACK_NAME"
- ]
- },
- "authors": [
- {
- "name": "Kevin Chan",
- "image": "https://github.com/Kevinwochan/kevinwochan.github.io/blob/main/src/images/kevin.jpeg?raw=true",
- "bio": "ISV Solutions Architect @ Amazon Web Services",
- "linkedin": "kevinwochan"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-http-api-lambda-dynamodb-python-cdk/example-pattern.json b/apigw-http-api-lambda-dynamodb-python-cdk/example-pattern.json
deleted file mode 100644
index 2c4d7bc99..000000000
--- a/apigw-http-api-lambda-dynamodb-python-cdk/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "API Gateway to Lambda to DynamoDb",
- "description": "Create a Lambda function in VPC that receives a request from API Gateway and inserts a record into a DynamoDB table using VPC endpoint.",
- "language": "Python",
- "architectureURL": "docs/architecture.png",
- "videoId": "",
- "level": "200",
- "framework": "CDK",
- "services": {
- "from": "apigw",
- "to": "dynamodb"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern explains how to deploy a CDK application with Amazon API Gateway, AWS Lambda, VPC, VPC endpoint, and Amazon DynamoDB."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-dynamodb-python-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-dynamodb-python-cdk/README.md",
- "projectFolder": "apigw-http-api-lambda-dynamodb-python-cdk",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-dynamodb-python-cdk",
- "templateFile": "stacks/apigw_http_api_lambda_dynamodb_python_cdk_stack.py"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "AWS Docs: Writing Data to a Table",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SQLtoNoSQL.WriteData.html"
- },
- {
- "text": "Creating a scalable serverless import process for Amazon DynamoDB",
- "link": "https://aws.amazon.com/blogs/compute/creating-a-scalable-serverless-import-process-for-amazon-dynamodb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [{
- "headline": "Presented by Rupesh Tiwari, AWS Senior Solution Architect",
- "name": "Rupesh Tiwari",
- "image": "https://avatars.githubusercontent.com/u/330383?v=4",
- "bio": "Senior Solutions Architect at AWS Global Financial Services.",
- "linkedin": "rupesh-tiwari",
- "twitter": "rupeshtiwari"
- }]
-}
diff --git a/apigw-http-api-lambda-python/example-pattern.json b/apigw-http-api-lambda-python/example-pattern.json
deleted file mode 100644
index 96926195e..000000000
--- a/apigw-http-api-lambda-python/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "AWS API Gateway HTTP API to AWS Lambda",
- "description": "Create an HTTP API and a Lambda function",
- "language": "Python",
- "level": "100",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with a Lambda integration.",
- "The AWS Lambda function is written in Python3.9. The function returns a small message and a status code to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-python",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-python",
- "projectFolder": "apigw-http-api-lambda-python",
- "templateFile": "apigw-http-api-lambda-python/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with HTTP API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Once the application is deployed, retrieve the API ID provided as output and go to API Gateway console.",
- "Click on the newly created API, in the stages window, click on the link under 'invoke URL'.",
- "You can also make the request from Postman or from a terminal using the curl command."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer at AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-http-api-lambda-rds-proxy-terraform/example-pattern.json b/apigw-http-api-lambda-rds-proxy-terraform/example-pattern.json
deleted file mode 100644
index 9994200f0..000000000
--- a/apigw-http-api-lambda-rds-proxy-terraform/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "AWS API Gateway HTTP API to AWS Lambda to RDS Proxy",
- "description": "This pattern sets up an API Gateway HTTP API using AWS Lambda function as an integration that connects to an RDS Proxy endpoint.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When an HTTP POST request is sent to the Amazon API Gateway endpoint, the AWS Lambda function is invoked to issue a database query against an RDS proxy endpoint.",
- "The lambda function retrieves a temporary token from IAM to authenticate instead of using native database credentials.",
- "The RDS proxy will then establish a connection to the database, the lambda function will borrow this database connection for the next query/transaction."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-rds-proxy-terraform",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-rds-proxy-terraform",
- "projectFolder": "apigw-http-api-lambda-rds-proxy-terraform",
- "templateFile": "apigw-http-api-lambda-rds-proxy-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Storage first integrations",
- "link": "https://aws.amazon.com/blogs/compute/building-storage-first-applications-with-http-apis-service-integrations/"
- }]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Carlos Bauer",
- "bio": "I am Technical Account Manager at AWS"
- }]
-}
\ No newline at end of file
diff --git a/apigw-http-api-lambda-rust/example-pattern.json b/apigw-http-api-lambda-rust/example-pattern.json
deleted file mode 100644
index ef142ccac..000000000
--- a/apigw-http-api-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway HTTP API to AWS Lambda",
- "description": "This pattern creates an Amazon API Gateway HTTP API and an AWS Lambda function.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with a default route and basic CORS configuration. The default route is integrated with an AWS Lambda function written in Node.js. The function logs the incoming API event (v2) and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-rust",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-rust",
- "projectFolder": "apigw-http-api-lambda-rust",
- "templateFile": "apigw-http-api-lambda-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway",
- "link": "https://aws.amazon.com/api-gateway/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/apigw-http-api-lambda-terraform/example-pattern.json b/apigw-http-api-lambda-terraform/example-pattern.json
deleted file mode 100644
index 8ed064929..000000000
--- a/apigw-http-api-lambda-terraform/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon API Gateway HTTP API to AWS Lambda",
- "description": "This pattern creates an Amazon API Gateway HTTP API and an AWS Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with a default route and basic CORS configuration.",
- "The default route is integrated with an AWS Lambda function written in Python.",
- "The function logs the incoming API event (v2) and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-lambda-terraform",
- "templateURL": "serverless-patterns/apigw-http-api-lambda-terraform",
- "projectFolder": "apigw-http-api-lambda-terraform",
- "templateFile": "apigw-http-api-lambda-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- },
- {
- "text": "Working with AWS Lambda proxy integrations for HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html"
- },
- {
- "test": "AWS Lambda - the Basics",
- "link": "https://docs.aws.amazon.com/whitepapers/latest/serverless-architectures-lambda/aws-lambdathe-basics.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Carlos Bauer",
- "bio": "I am a Technical Account Manager at AWS"
- }
- ]
-}
diff --git a/apigw-http-api-sqs-lambda-sls/example-pattern.json b/apigw-http-api-sqs-lambda-sls/example-pattern.json
deleted file mode 100644
index 3c36d1aad..000000000
--- a/apigw-http-api-sqs-lambda-sls/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Amazon API Gateway HTTP API to SQS to Lambda",
- "description": "This pattern creates an HTTP API endpoint that send message to SQS and trigger a Lambda function to process the message",
- "language": "Node.js, TypeScript",
- "level": "100",
- "framework": "Serverless Framework",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API Gateway HTTP API with a send
route that send message to a SQS queue.",
- "The Amazon API Gateway HTTP API has basic CORS configured. ",
- "Upon receiving message, SQS will trigger a Lambda function to process the message.",
- "The function will only print
the message only. The function written in TypeScript."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-http-api-sqs-lambda-sls",
- "templateURL": "serverless-patterns/apigw-http-api-sqs-lambda-sls",
- "projectFolder": "apigw-http-api-sqs-lambda-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using Lambda with Amazon SQS",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html"
- },
- {
- "text": "Amazon API Gateway HTTP Integration subtype reference",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Dmitry Gulin, Modernization Architect, AWS",
- "name": "Dmitry Gulin",
- "bio": "Dmitry is a modernization architect for Professional Services at Amazon Web Services based in the US.",
- "imageURL": "https://www.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a?s=200"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-kinesis-lambda-ddb/example-pattern.json b/apigw-kinesis-lambda-ddb/example-pattern.json
deleted file mode 100644
index cbdd62653..000000000
--- a/apigw-kinesis-lambda-ddb/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon Kinesis Data Stream to AWS Lambda to Amazon DynamoDB",
- "description": "This pattern explains how to deploy a SAM application with Amazon API Gateway, Amazon Kinesis Data Stream, AWS Lambda, and Amazon DynamoDB. When an HTTP POST request is made to the Amazon API Gateway endpoint, Gateway authorizes the request by checking Basic auth credentials and on valid credentials, request payload is sent to Amazon Kinesis Data Stream. This pattern is especially useful in cases of large payloads since Kinesis Data Stream can support upto 1MB paylod size. AWS Lambda function consumes event from the Data Stream and inserts the event/payload into the Amazon DynamoDB table. Amazon Lambda is also configured with a Dead Letter Queue where events are sent when retries to process those messages are repeatedly failed.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with route /submit/{streamName}/{eventId} configured with basic authentication.",
- "On receiving a request, API Gateway will invoke a Lambda authorizer which validates the request and returns a policy informing API Gateway to accept or deny the request.",
- "When request is accepted, API Gateway sends the message payload to Kinesis Data Stream.",
- "Messages from Kinesis Data Streams is posted to a lambda function to process them. Lambda uses a SQS queue as Dead Letter Queue to send the messages in case of continued failures to process the messages.",
- "Lambda saves the received messages into a DynamoDB table."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-kinesis-lambda-ddb",
- "templateURL": "serverless-patterns/apigw-kinesis-lambda-ddb",
- "projectFolder": "apigw-kinesis-lambda-ddb",
- "templateFile": "apigw-kinesis-lambda-ddb/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda Authorizers",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html"
- },
- {
- "text": "Dead Letter Queues",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-deadletterqueue.html"
- },
- {
- "text": "Amazon Kinesis Data Streams",
- "link": "https://docs.aws.amazon.com/streams/latest/dev/introduction.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Ravi Kiran Ganji",
- "bio": "I am a Senior Cloud Application Architect at AWS Professional Services, and Serverless Enthusiast.",
- "linkedin": "ravi-kiran-ganji"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-kinesis-lambda/example-pattern.json b/apigw-kinesis-lambda/example-pattern.json
deleted file mode 100644
index 893bbf1ea..000000000
--- a/apigw-kinesis-lambda/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon Kinesis with AWS Lambda as a consumer",
- "description": "Create a REST API Gateway which performs PutRecords API call to Kinesis Data stream and the stream is consumed by a Lambda function",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern will help you to deploy Amazon API Gateway API integration with Amazon Kinesis Stream and it will deploy Lambda function as a consumer for deployed Amazon Kinesis Stream.",
- "In this pattern, Lambda function is logging the decoded message which was received from the Amazon Kinesis Stream."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-kinesis-lambda",
- "templateURL": "serverless-patterns/aws-kinesis-lambda",
- "projectFolder": "aws-kinesis-lambda",
- "templateFile": "aws-kinesis-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: Create a REST API as an Amazon Kinesis proxy in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-kinesis.html"
- },
- {
- "text": "Kinesis Data Stream PutRecord API",
- "link": "https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html"
- },
- {
- "text": "Using AWS Lambda with Amazon Kinesis",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Vijay Konade",
- "image": "img/vijay.png",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/vijay-konade-14427479/"
- },
- {
- "name": "Thi Nguyen",
- "image": "https://drive.google.com/file/d/188LpzUvUmHt1o7vzbwKw32S-fYabL-qY/view?usp=sharing",
- "bio": "Solutions Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/ndthi"
- }
- ]
- }
diff --git a/apigw-kinesis/example-pattern.json b/apigw-kinesis/example-pattern.json
deleted file mode 100644
index cc5dd5ad4..000000000
--- a/apigw-kinesis/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "REST API Gateway to Kinesis",
- "description": "Create a REST API Gateway that can perform PutRecords and GetRecords API Call to Kinesis Data stream",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This Pattern creates a REST API Gateway and Kinesis Data Stream. The API Gateway endpoint uses service integration to directly connect to kinesis Data streams.",
- "The API gateway exposes the GetRecords or PutRecords (including PutRecord) action in Kinesis."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/aws-kinesis",
- "templateURL": "serverless-patterns/aws-kinesis",
- "projectFolder": "aws-kinesis",
- "templateFile": "aws-kinesis/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create a REST API as an Amazon Kinesis proxy in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-kinesis.html"
- },
- {
- "text": "Kinesis Data Stream API Actions List",
- "link": "https://docs.aws.amazon.com/kinesis/latest/APIReference/API_Operations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Vaidehi Patel",
- "image": "https://avatars.githubusercontent.com/u/23283229?v=4",
- "bio": "I'm a Solutions Architect at Amazon Web Services based in Dallas,TX. I'm a serverless enthusiast, I like to build and architect serverless applications",
- "linkedin": "https://www.linkedin.com/in/vaidehi-patel08/"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-lambda-authorizer-custom-header/example-pattern.json b/apigw-lambda-authorizer-custom-header/example-pattern.json
deleted file mode 100644
index d4fb999af..000000000
--- a/apigw-lambda-authorizer-custom-header/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon API Gateway REST API with AWS Lambda Token Authorizer with custom headers",
- "description": "Create an API with a mapping template that enriches the request with additional data from Lambda Token Authorizer.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This SAM template creates an API that uses additional logic from the Lambda Token Authorizer to add data to the request.",
- "The data is passed to the HTTP endpoint in the form of a custom header.",
- "This aproach can be used to inject data that downstream legacy systems expect and that is dependent on data that is available to authorizer.",
- "The HTTP endpoint in the example returns a response showing the headers that are received."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-authorizer-custom-header",
- "templateURL": "serverless-patterns/apigw-lambda-authorizer-custom-header",
- "projectFolder": "apigw-lambda-authorizer-custom-header",
- "templateFile": "apigw-lambda-authorizer-custom-header/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with API Gateway and mapping templates",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Once the application is deployed, retrieve the API URL and a request from Postman or from a terminal using the curl command with an AuthorizationToken header of 'allow'."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Shaun Guo, Technical Account Manager",
- "name": "Shaun Guo",
- "image": "https://media.licdn.com/dms/image/C5103AQG3KMyMdEIKpA/profile-displayphoto-shrink_800_800/0/1517283953925?e=1692835200&v=beta&t=AxJ9ST_8K_bw8nqTPDaJB2F5dnQspES9FuJ64DBScC8",
- "bio": "Shaun is a Senior Technical Account Manager at Amazon Web Services based in Australia",
- "linkedin": "https://www.linkedin.com/in/shaun-guo/"
- }
- ]
- }
diff --git a/apigw-lambda-authorizer/example-pattern.json b/apigw-lambda-authorizer/example-pattern.json
deleted file mode 100644
index fd6a16450..000000000
--- a/apigw-lambda-authorizer/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon API Gateway with a Lambda Token Authorizer",
- "description": "Create a REST API Gateway with a Lambda Token Authorizer for access control",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint that uses a Lambda Token Authorizer for access control.",
- "If the request to the endpoint does not include a 'authorizationToken' header, the Lambda Authorizer will not be invoked and API Gateway will return a 401 Forbidden.",
- "If the request to the endpoint includes a 'authorizationToken' header, the Lambda Authorizer will be invoked and its response will depend on the value of the 'authorizationToken' header.",
- "If the value of 'authorizationToken' header is 'unauthorized', API Gateway will return a 401 Unauthorized error.",
- "If the value of 'authorizationToken' header is 'Bearer deny', API Gateway will return a 403 error.",
- "Only if the value of 'authorizationToken' header is 'Bearer allow', API Gateway will successfully invoke the Lambda integration and return a 200.",
- "For any other case, API Gateway will return a 500 error."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-authorizer",
- "templateURL": "serverless-patterns/apigw-lambda-authorizer",
- "projectFolder": "apigw-lambda-authorizer",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Controlling access to a REST API with a Lambda Token Authorizer",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-lambda-cdk/example-pattern.json b/apigw-lambda-cdk/example-pattern.json
deleted file mode 100644
index dac6f62b0..000000000
--- a/apigw-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon API Gateway to AWS Lambda",
- "description": "Create an Amazon API Gateway to AWS Lambda REST API.",
- "language": "Node.js, TypeScript",
- "architectureURL": "https://ibrahimcesar-github.s3.amazonaws.com/patterns-apigw-lambda-cdk.png",
- "videoId": "",
- "level":"100",
- "framework": "CDK",
- "services": {
- "from": "apigateway",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern in CDK offers a boilerlate to generate an Amazon API Gateway REST API endpoint with a a greedy proxy ('{proxy+}') and 'ANY' method from the specified path, meaning it will accept by default any method and any path. The lambda provided in TypeScript only returns the path."
- ]
- },
- "deploy": {
- "text": [
- "npm run deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: npm run destroy"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-cdk",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/apigw-lambda-cdk/src/",
- "readmeURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/apigw-lambda-cdk/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "CDK Patterns",
- "link": "https://cdkpatterns.com/"
- }
- ]
- },
- "author": {
- "name": "Ibrahim Cesar",
- "image": "https://phonetool.amazon.com/users/ibracnb",
- "bio": "Enterprise Solutions Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/ibrahimcesar/?locale=en_US",
- "twitter": "twitter.com/ibrahimcesar"
- }
-}
diff --git a/apigw-lambda-comprehend-sam/example-pattern.json b/apigw-lambda-comprehend-sam/example-pattern.json
deleted file mode 100644
index ee397eeb4..000000000
--- a/apigw-lambda-comprehend-sam/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Lambda to Comprehend using REST API",
- "description": "REST API backed by a Lambda function that invokes the Comprehend DetectSentiment API.",
- "language": "Python",
- "level": "100",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project deploys an Amazon API Gateway REST API with an AWS Lambda integration.",
- "The Lambda function is written in Python, calls the Amazon Comprehend DetectSentiment API, and returns a response containing the detected sentiment."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-comprehend-sam",
- "templateURL": "serverless-patterns/apigw-lambda-comprehend-sam",
- "projectFolder": "apigw-lambda-comprehend-sam",
- "templateFile": "apigw-lambda-comprehend-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda to Comprehend - Serverless Pattern",
- "link": "https://serverlessland.com/patterns/lambda-comprehend"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Pascal Vogel",
- "image": "https://avatars.githubusercontent.com/u/100202393?v=4",
- "bio": "Pascal Vogel is a Solutions Architect at Amazon Web Services (AWS)."
- },
- {
- "name": "Diana Cheng",
- "image": "https://avatars.githubusercontent.com/u/248259?v=4",
- "bio": "Diana Cheng is a Senior Solutions Architect at Amazon Web Services (AWS)."
- }
- ]
-}
diff --git a/apigw-lambda-dynamodb-cdk-go/example-pattern.json b/apigw-lambda-dynamodb-cdk-go/example-pattern.json
deleted file mode 100644
index 224dbf8ec..000000000
--- a/apigw-lambda-dynamodb-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway to Lambda to DynamoDB",
- "description": "Create a Lambda function that receives a request from API Gateway and inserts a record into a DynamoDB table.",
- "language": "Go",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"200",
- "framework": "CDK",
- "services": {
- "from": "apigw",
- "to": "dynamodb"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern explains how to deploy a CDK application with Amazon API Gateway, AWS Lambda, and Amazon DynamoDB using the Go programming language."
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-cdk-golang",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-cdk-golang/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- ]
- },
- "author": {
- "headline": "Presented by Abhishek Gupta, Principal Developer Advocate at AWS",
- "name": "Abhishek Gupta",
- "twitter": "abhi_tweeter",
- "linkedin":"https://www.linkedin.com/in/abhirockzz/",
- "imageURL":"https://abhirockzz.github.io/icon.jpg"
- }
-}
diff --git a/apigw-lambda-dynamodb-cdk/example-pattern.json b/apigw-lambda-dynamodb-cdk/example-pattern.json
deleted file mode 100644
index 7e80620b0..000000000
--- a/apigw-lambda-dynamodb-cdk/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "API Gateway to Lambda to DynamoDb",
- "description": "Create a Lambda function that receives a request from API Gateway and inserts a record into a DynamoDB table.",
- "language": ".NET",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"200",
- "framework": "CDK",
- "services": {
- "from": "apigw",
- "to": "dynamodb"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern explains how to deploy a CDK application with Amazon API Gateway, AWS Lambda, and Amazon DynamoDB."
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-cdk/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- ]
- },
- "author": {
- "headline": "Presented by James Eastham, Cloud Infrastructure Architect",
- "name": "James Eastham",
- "twitter": "plantpowerjames"
- }
-}
diff --git a/apigw-lambda-dynamodb-stream-lambda/example-pattern.json b/apigw-lambda-dynamodb-stream-lambda/example-pattern.json
deleted file mode 100644
index 5753d3a8a..000000000
--- a/apigw-lambda-dynamodb-stream-lambda/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "API Gateway to Lambda, DynamoDB, Kinesis, Lambda integration",
- "description": "API to trigger a Lambda function which save to DynamoDB, stream messages (with DynamoDB Stream) and trigger a Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Amazon API Gateway, AWS Lambda, Amazon DynamoDB and Kinesis together. When an HTTP POST request is made to the Amazon API Gateway endpoint, the AWS Lambda function is invoked and inserts an item into the Amazon DynamoDB table, then an event will be pushed into Kinesis and trigger a Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-stream-lambda",
- "templateURL": "serverless-patterns/apigw-lambda-dynamodb-stream-lambda",
- "projectFolder": "apigw-lambda-dynamodb-stream-lambda",
- "templateFile": "apigw-lambda-dynamodb-stream-lambda/sfn_athena_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway to trigger Lambda and save to DynamoDB",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-dynamo-db.html"
- },
- {
- "text": "DynamoDB to Kinesis",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/kds.html"
- },
- {
- "text": "Kinesis to Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
"
- ]
- },
- "authors": [
- {
- "name": "Thi Nguyen",
- "image": "https://drive.google.com/file/d/188LpzUvUmHt1o7vzbwKw32S-fYabL-qY/view?usp=sharing",
- "bio": "Solutions Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/ndthi"
- },
- {
- "name": "Vijay Konade",
- "image": "vijay.png",
- "bio": "Cloud Support Eng @ AWS",
- "linkedin": "https://www.linkedin.com/in/vijay-konade-14427479/"
- }
- ]
-}
diff --git a/apigw-lambda-dynamodb-terraform/example-pattern.json b/apigw-lambda-dynamodb-terraform/example-pattern.json
deleted file mode 100644
index e06b2db48..000000000
--- a/apigw-lambda-dynamodb-terraform/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon API Gateway to AWS Lambda to Amazon DynamoDB",
- "description": "This pattern demonstrates how to deploy an application with Amazon API Gateway, AWS Lambda, and Amazon DynamoDB using Terraform.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When an HTTP POST request is sent to the Amazon API Gateway endpoint, the AWS Lambda function is invoked and inserts an item into the Amazon DynamoDB table."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-dynamodb-terraform",
- "templateURL": "serverless-patterns/apigw-lambda-dynamodb-terraform",
- "projectFolder": "apigw-lambda-dynamodb-terraform",
- "templateFile": "apigw-lambda-dynamodb-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "AWS Docs:Writing Data to a Table",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SQLtoNoSQL.WriteData.html"
- },
- {
- "text": "Using AWS Lambda with Amazon API Gateway",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-apigateway.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Carlos Bauer",
- "bio": "I am a Technical Account Manager at AWS"
- }]
-}
diff --git a/apigw-lambda-iot-cdk/example-pattern.json b/apigw-lambda-iot-cdk/example-pattern.json
deleted file mode 100644
index 7f44f5813..000000000
--- a/apigw-lambda-iot-cdk/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "API Gateway to Lambda to AWS IoT",
- "description": "Create an API Gateway REST API to invoke a Lambda function that will publish to AWS IoT Core.",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API Gateway REST API endpoint, that invokes a Lambda function.",
- "The Lambda function has been given permissions to publish to AWS IoT Core (`iot:Publish`). Make a POST call to the API Endpoint with `topic` and `message` in the body.",
- "This pattern deploys an API Gateway resource and one Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-iot-cdk",
- "templateURL": "serverless-patterns/apigw-lambda-iot-cdk",
- "projectFolder": "apigw-lambda-iot-cdk",
- "templateFile": "apigw-lambda-iot-cdk/lib/apigw-lambda-iot-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Boto3 IoT Publish",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot-data.html#IoTDataPlane.Client.publish"
- },
- {
- "text": "AWS IoT HTTPS",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/http.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [{
- "name": "Ashu Joshi",
- "image": "https://avatars.githubusercontent.com/u/79330125?s=400&u=4802ebc8f24e64031052d3bf95af3dea7920357d&v=4",
- "bio": "I am a Principal Architect, AWS Cloud Architect, Full-Stack Developer, Edge AI/ML/IoT Engineer, and Serverless Enthusiast.",
- "linkedin": "ashujoshi",
- "twitter": "@ashujoshi"
- }]
-}
diff --git a/apigw-lambda-json-xml-vtl-transformation/example-pattern.json b/apigw-lambda-json-xml-vtl-transformation/example-pattern.json
deleted file mode 100644
index 5d3f46c8b..000000000
--- a/apigw-lambda-json-xml-vtl-transformation/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Response Transformation from XML to JSON in API Gateway",
- "description": "Use VTL template to transform json response to xml in Amazon API Gateway.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "As part of this article, we will be creating a lambda and an API Gateway. The API Gateway will return custom xml transforming the json response from lambda."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-json-xml-vtl-transformation",
- "templateURL": "serverless-patterns/apigw-lambda-json-xml-vtl-transformation",
- "projectFolder": "apigw-lambda-json-xml-vtl-transformation",
- "templateFile": "apigw-lambda-json-xml-vtl-transformation/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway Mapping Template Reference",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html"
- },
- {
- "text": "Error Handling Patterns in Amazon API Gateway and AWS Lambda",
- "link": "https://aws.amazon.com/blogs/compute/error-handling-patterns-in-amazon-api-gateway-and-aws-lambda/"
- },
- {
- "text": "Apache VTL reference user guide",
- "link": "https://velocity.apache.org/engine/2.0/user-guide.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Vamsi Krishna Ganti",
- "bio": "Cloud Consultant at AWS focusing on Application Development."
- }
- ]
-}
diff --git a/apigw-lambda-memorydb/example-pattern.json b/apigw-lambda-memorydb/example-pattern.json
deleted file mode 100644
index 5305e5280..000000000
--- a/apigw-lambda-memorydb/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to MemoryDB",
- "description": "Create Lambda Functions to interact with MemoryDB.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample shows how to build a durable, in-memory, cluster-enabled database service and integrate it with AWS Lambda. Lambda functions use REST API calls to access the data and configuration from the MemoryDB.",
- "This pattern deploys 2 Lambda Functions, one MemoryDB cluster and one API gateway public endpoint."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-memorydb",
- "templateURL": "serverless-patterns/apigw-lambda-memorydb",
- "projectFolder": "apigw-lambda-memorydb",
- "templateFile": "apigw-lambda-memorydb/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda",
- "link": "https://aws.amazon.com/lambda/"
- },
- {
- "text": "Amazon MemoryDB for Redis",
- "link": "https://aws.amazon.com/memorydb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
."
- ]
- },
- "authors": [
- {
- "name": "Mansi Doshi",
- "image": "",
- "bio": "Mansi is a Cloud Consultant at Amazon Web Services based in India.",
- "linkedin": "https://www.linkedin.com/in/mansi-doshi-2a448177"
- }
- ]
-}
diff --git a/apigw-lambda-observability/example-pattern.json b/apigw-lambda-observability/example-pattern.json
deleted file mode 100644
index d228a77c5..000000000
--- a/apigw-lambda-observability/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "API Gateway to Lambda with observability",
- "description": "Create an API with metrics, alerts, traces, logs, and dashboard.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/apigw-lambda-observability.png",
- "videoId": "",
- "level":"200",
- "framework": "SAM",
- "services": {
- "from": "api",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys Amazon API Gateway HTTP API with a single route that is integrated with and AWS Lambda function written in Node.js. Pattern uses Amazon CloudWatch logs, metrics, alerts, dashboards, Embedded Metrics Format, AWS X-Ray, Amazon SNS."
- ]
- },
- "deploy": {
- "text": [
- "npm install",
- "sam build",
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-observability",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/apigw-lambda-observability/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Extended examples of this pattern implementation",
- "link": "https://github.com/aws-samples/serverless-samples/tree/main/serverless-rest-api"
- }
- ]
- },
- "author": {
- "headline": "Presented by Giedrius Praspaliauskas, Sr. Solutions Architect, Serverless",
- "name": "Giedrius Praspaliauskas",
- "imageURL": "",
- "linkedin": "https://www.linkedin.com/in/gpraspaliauskas/",
- "bio": "Giedrius is a senior solutions architect focusing on serverless at Amazon Web Services based in the US. "
- }
-}
diff --git a/apigw-lambda-qldb-cdk-dotnet/example-pattern.json b/apigw-lambda-qldb-cdk-dotnet/example-pattern.json
deleted file mode 100644
index d1860bafe..000000000
--- a/apigw-lambda-qldb-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "title": "Amazon API Gateway to AWS Lambda",
- "description": "Create an Amazon API Gateway to AWS Lambda REST API",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The CDK stack creates an Amazon API Gateway REST API endpoint with AWS Lambda function proxy integration.",
- "Proxy integration creates a proxy resource with the greedy path `{proxy+}` and the method `ANY`.",
- "This means that the REST API endpoint accepts any method and any path by default.",
- "The Lambda used in this pattern is an ASP.NET Core Web API application that has been configured to allow Lambda and API Gateway to act as the web server instead of Kestrel."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-cdk-dotnet",
- "projectFolder": "apigw-lambda-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/apigw-lambda-cdk-dotnet",
- "templateFile": "src/cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ankush Jain",
- "image": "https://avatars.githubusercontent.com/u/13661966?v=4",
- "bio": "Application Development Consultant at AWS Professional Services.",
- "linkedin": "ankush-jain-developer",
- "twitter": "ankushjain358"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-lambda-qldb-terraform/example-pattern.json b/apigw-lambda-qldb-terraform/example-pattern.json
deleted file mode 100644
index 902989c8c..000000000
--- a/apigw-lambda-qldb-terraform/example-pattern.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "title": "API Gateway to Lambda to QLDB",
- "description": "Create an API Gateway REST API that uses a Lambda function to call QLDB",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern shows how to deploy a Terraform template with Amazon API Gateway, AWS Lambda and Amazon Quantum Ledger Database (QLDB). The API Gateway exposes a REST API with a number of methods. Each API method uses a Lambda proxy integration to invoke a separate AWS Lambda function that interacts with a ledger in Amazon QLDB. This allows you to create a new Person record, update the record, delete the record, view the current state of the record, and view the entire revision history.",
- "Each Lambda function is configured with the minimum set of permissions necessary. For example, only the Get Person History function has the qldb:PartiQLHistoryFunction permission needed to query the full revision history."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-qldb-terraform",
- "templateURL": "serverless-patterns/apigw-lambda-qldb-terraform",
- "projectFolder": "apigw-lambda-qldb-terraform",
- "templateFile": "apigw-lambda-qldb-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Amazon QLDB documentation",
- "link": "https://docs.aws.amazon.com/qldb/latest/developerguide/getting-started-driver.html"
- },
- {
- "text": "Real world cryptographic verification with Amazon QLDB",
- "link": "https://aws.amazon.com/blogs/database/real-world-cryptographic-verification-with-amazon-qldb/"
- },
- {
- "text": "QLDB Shell",
- "link": "https://github.com/awslabs/amazon-qldb-shell"
- },
- {
- "text": "AWS re:Invent 2020 - Building out a serverless application with Amazon QLDB",
- "link": "https://www.youtube.com/watch?v=dtBpwCBlz6M"
- },
- {
- "text": "QLDB Guide",
- "link": "https://qldbguide.com/"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
\ No newline at end of file
diff --git a/apigw-lambda-rds-snapstart/example-pattern.json b/apigw-lambda-rds-snapstart/example-pattern.json
deleted file mode 100644
index a25ca53aa..000000000
--- a/apigw-lambda-rds-snapstart/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "Create a REST API with Amazon API Gateway, Amazon RDS and AWS Lambda with SnapStart",
- "description": "A pattern to show how to use Lambda SnapStart with relational databases.",
- "language": "Java",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "CDK creates all the infrastructure we need for the pattern, include the VPC, subnets, security groups,secrets and the DB.",
- "The DB setup Lambda function is executed once to create the database table with a given structure.",
- "This REST API is implemented with the Micronaut framework. Credentials for the DB are passed as environment variables to the application."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-rds-snapstart",
- "templateURL": "serverless-patterns/apigw-lambda-rds-snapstart",
- "projectFolder": "apigw-lambda-rds-snapstart",
- "templateFile": "do i need this?`"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda SnapStart Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html"
- },
- {
- "text": "re:Invent Video - AWS Lambda SnapStart (SVS320)",
- "link": "https://www.youtube.com/watch?v=ZbnAithBNYY"
- },
- {
- "text": "Micronaut",
- "link": "https://micronaut.io/"
- },
- {
- "text": "Micronaut CRaC Reference",
- "link": "https://micronaut-projects.github.io/micronaut-crac/latest/guide/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Mark Sailes",
- "image": "https://avatars.githubusercontent.com/u/45629314",
- "bio": "Senior Specialist SA, Serverless at AWS and Java fan.",
- "linkedin": "mark-sailes",
- "twitter": "@MarkSailes3"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-lambda-rust/example-pattern.json b/apigw-lambda-rust/example-pattern.json
deleted file mode 100644
index 0069fd0f5..000000000
--- a/apigw-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to AWS Lambda",
- "description": "This pattern creates an Amazon API Gateway REST API and an AWS Lambda function.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API API with a default route and basic CORS configuration. The default route is integrated with an AWS Lambda function written in Rust. The function logs the incoming API event and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-rust",
- "templateURL": "serverless-patterns/apigw-lambda-rust",
- "projectFolder": "apigw-lambda-rust",
- "templateFile": "apigw-lambda-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway",
- "link": "https://aws.amazon.com/api-gateway/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/apigw-lambda-s3-cdk-dotnet/example-pattern.json b/apigw-lambda-s3-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 7e831ec9d..000000000
--- a/apigw-lambda-s3-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "ApiGateway Endpoint to Generate SignedURL",
- "description": "Creates APIGateway Endpoint backed by AWS Lambda Function will generate the PresignedURL for the object available in the S3 Bucket.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an API Gateway, a Lambda (Docker Image & ECR), a S3 Bucket with sample files",
- "Generate Docker Image for the Function - dotnet6.0",
- "Deploy the Lamdba with the Image",
- "Deploy an APIGateway Endpoint with Get method in Root to proxy to Lambda",
- "Deploy a S3 Bucket and upload sample files for SignedURL quick validation"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-s3-cdk-dotnet",
- "templateURL": "serverless-patterns/apigw-lambda-s3-cdk-dotnet",
- "projectFolder": "apigw-lambda-s3-cdk-dotnet",
- "templateFile": "apigw-lambda-s3-cdk-dotnet/cdk/src/Cdk/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway >> Lambda >> S3"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed cleanup instructions."
- ]
- },
- "authors": [
- {
- "name": "Sakthivel Chellapparimanam",
- "image": "",
- "bio": "AWS - Cloud Application Architect",
- "linkedin": "https://www.linkedin.com/in/srcsakthivel",
- "twitter": "@srcsakthivel"
- }
- ]
-}
diff --git a/apigw-lambda-sagemaker-jumpstartendpoint-cdk-python/example-pattern.json b/apigw-lambda-sagemaker-jumpstartendpoint-cdk-python/example-pattern.json
deleted file mode 100644
index 0b1dafefb..000000000
--- a/apigw-lambda-sagemaker-jumpstartendpoint-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Accessing Amazon SageMaker Endpoint via API Gateway and Lambda",
- "description": "This pattern deploys a SageMaker Jumpstart model (Flan T5 XL) endpoint. It also uses a Lambda function and API Gateway to integrate the endpoint",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys a Amazon SageMaker Jumpstart model (Flan T5 XL from HuggingFace) endpoint using Amazon SageMaker. The model can be changed by modifying the MODEL_ID attribute in app.py file.",
- "The pattern also adds a Lambda function with API Gateway integration to query the endpoint.",
- "The API Gateway is protected using an API Key. To query the API Gateway endpoint, x-api-key header needs to be added to the HTTP request."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-sagemaker-jumpstartendpoint-cdk-python",
- "templateURL": "serverless-patterns/apigw-lambda-sagemaker-jumpstartendpoint-cdk-python",
- "projectFolder": "apigw-lambda-sagemaker-jumpstartendpoint-cdk-python",
- "templateFile": "stack/ApigwLambdaSagemakerJumpstartendpointStack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Zero-shot prompting for the Flan-T5 foundation model in Amazon SageMaker JumpStart",
- "link": "https://aws.amazon.com/blogs/machine-learning/zero-shot-prompting-for-the-flan-t5-foundation-model-in-amazon-sagemaker-jumpstart/"
- },
- {
- "text": "Instruction fine-tuning for FLAN T5 XL with Amazon SageMaker Jumpstart",
- "link": "https://aws.amazon.com/blogs/machine-learning/instruction-fine-tuning-for-flan-t5-xl-with-amazon-sagemaker-jumpstart/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Kaustav Dey",
- "image": "https://avatars.githubusercontent.com/u/13236519",
- "bio": "Solution Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/kaustavbecs/"
- }
- ]
-}
diff --git a/apigw-lambda-sfn-transcribe-translate-polly-sam/example-pattern.json b/apigw-lambda-sfn-transcribe-translate-polly-sam/example-pattern.json
deleted file mode 100644
index dc6675016..000000000
--- a/apigw-lambda-sfn-transcribe-translate-polly-sam/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "API Gateway to Lambda to Step Function to Transcribe, Translate and Polly",
- "description": "Invoke step function execution from API Gateway to orchestrate workflow across Transcribe, Translate and Polly",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This patterns explains how to integrate API Gateway, Lambda, Step Functions, Transcribe, Translate, Polly and S3 to develop an audio language converter.",
- "The API gateway exposes a websocket to keep the channel open for the process to complete and send response back. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-sfn-transcribe-translate-polly-sam",
- "templateURL": "serverless-patterns/apigw-lambda-sfn-transcribe-translate-polly-sam/src",
- "projectFolder": "apigw-lambda-sfn-transcribe-translate-polly-sam",
- "templateFile": "apigw-lambda-sfn-transcribe-translate-polly-sam/src/serverless.yml"
- }
- },
- "resources": {
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_NAMED_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Bubai Bal",
- "image": "./bubai.png",
- "bio": "Solutions Architect @ AWS",
- "linkedin": "bubai-bal"
- },
- {
- "name": "Avinandan Bandyopadhyay",
- "image": "./Avinandan.png",
- "bio": "Solutions Architect @ AWS",
- "linkedin": "avinandan-bandyopadhyay-8592ab29"
- },
- {
- "name": "Kaushal Bisht",
- "image": "",
- "bio": "Solutions Architect @ AWS",
- "linkedin": ""
- },
- {
- "name": "Aravind Kannan",
- "image": "",
- "bio": "Solutions Architect @ AWS",
- "linkedin": ""
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-lambda-sls/example-pattern.json b/apigw-lambda-sls/example-pattern.json
deleted file mode 100644
index 32ff6ad39..000000000
--- a/apigw-lambda-sls/example-pattern.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "title": "Amazon API Gateway to AWS Lambda",
- "description": "Create an Amazon API Gateway to AWS Lambda REST API.",
- "language": "Node.js, TypeScript",
- "architectureURL": "https://ibrahimcesar-github.s3.amazonaws.com/patterns-apigw-lambda-cdk.png",
- "videoId": "",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "apigateway",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern in Serverless Framework offers a boilerlate to generate an Amazon API Gateway REST API endpoint ",
- "with a greedy proxy (\"{proxy+}\") and \"ANY\" method from the specified path, meaning it will accept by default any method and any path. ",
- "The Lambda function, provided in TypeScript, only returns the path."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-sls",
- "templateURL": "serverless-patterns/apigw-lambda-sls",
- "projectFolder": "apigw-lambda-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using AWS Lambda with Amazon API Gateway",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-apigateway.html"
- },
- {
- "text": "Set up Lambda integrations in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-integrations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Dmitry Gulin, Modernization Architect, AWS",
- "name": "Dmitry Gulin",
- "bio": "Dmitry is a modernization architect for Professional Services at Amazon Web Services based in the US.",
- "imageURL": "https://www.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a?s=200"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-lambda-snapstart-terraform/example-pattern.json b/apigw-lambda-snapstart-terraform/example-pattern.json
deleted file mode 100644
index 5aaa78f91..000000000
--- a/apigw-lambda-snapstart-terraform/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "API Gateway to Lambda with SnapStart deployed with Terraform",
- "description": "Create a Java Lambda function with SnapStart deployed with Terraform",
- "language": "Java",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use an API Gateway, Lambda and DynamoDB with Lambda SnapStart for Java, and deploy it with Terraform"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-snapstart-terraform",
- "templateURL": "serverless-patterns/apigw-lambda-snapstart-terraform",
- "projectFolder": "apigw-lambda-snapstart-terraform",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda SnapStart",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
.",
- "Confirm the stack has been deleted: terraform show
."
- ]
- },
- "authors": [
- {
- "name": "Michele Ricciardi",
- "bio": "Senior Specialist Solutions Architect, DevAx",
- "twitter": "_mriccia_"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-lambda-snapstart/example-pattern.json b/apigw-lambda-snapstart/example-pattern.json
deleted file mode 100644
index b8086e2b4..000000000
--- a/apigw-lambda-snapstart/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "API Gateway to Lambda with SnapStart",
- "description": "Create a Java Lambda function with SnapStart",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use an API Gateway, Lambda and DynamoDB with Lambda SnapStart for Java."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-snapstart",
- "templateURL": "serverless-patterns/apigw-lambda-snapstart",
- "projectFolder": "apigw-lambda-snapstart",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda SnapStart",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Mark Sailes",
- "bio": "Senior Specialist Solutions Architect, Serverless",
- "twitter": "MarkSailes3"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-lambda-sns/example-pattern.json b/apigw-lambda-sns/example-pattern.json
deleted file mode 100644
index 36a9c1b4a..000000000
--- a/apigw-lambda-sns/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to Lambda to SNS",
- "description": "Integration of Amazon API Gateway REST API with Amazon Lambda to publish to Amazon SNS",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to publish to a SNS Topic whenever the REST API is invoked using Lambda function.",
- "This pattern deploys a Amazon API Gateway REST API with Lambda Function integration and SNS Topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-sns",
- "templateURL": "serverless-patterns/apigw-lambda-sns",
- "projectFolder": "apigw-lambda-sns",
- "templateFile": "apigw-lambda-sns/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Choosing between messaging services for serverless applications.",
- "link": "https://aws.amazon.com/blogs/compute/choosing-between-messaging-services-for-serverless-applications/"
- },
- {
- "text": "Publishing Messages in Amazon SNS",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sns.html#topic"
- },
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: same delete
."
- ]
- },
- "authors": [
- {
- "name": "Sanskar",
- "image": "https://drive.google.com/file/d/1dP8XHHevaOC-eEKOq6Gty75ZBZ428KHT/view?usp=sharing",
- "bio": "Sanskar is a Serverless Cloud Engineer at Amazon Web Services and is based in India. Sanskar has avid interest in microservices and serverless patterns.",
- "linkedin": "https://www.linkedin.com/in/sanskar05/"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-lambda-translate-polly-s3/example-pattern.json b/apigw-lambda-translate-polly-s3/example-pattern.json
deleted file mode 100644
index 7025f4825..000000000
--- a/apigw-lambda-translate-polly-s3/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to AWS Lambda which calls AWS Translate and Polly services",
- "description": "This pattern creates an Amazon API Gateway REST API and an AWS Lambda function that calls AWS Translate and Polly services and saves the audio file to S3.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "API Gateway REST API is integrated to AWS Lambda function which calls AWS Translate and Polly services"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-translate-polly-s3",
- "templateURL": "serverless-patterns/apigw-lambda-translate-polly-s3",
- "projectFolder": "apigw-lambda-translate-polly-s3",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Serverless Application Model",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-install.html"
- },
- {
- "text": "AWS Translate",
- "link": "https://aws.amazon.com/translate/"
- },
- {
- "text": "AWS Translate Languages",
- "link": "https://docs.aws.amazon.com/translate/latest/dg/pairs.html"
- },
- {
- "text": "AWS Polly",
- "link": "https://aws.amazon.com/polly/"
- },
- {
- "text": "AWS S3",
- "link": "https://aws.amazon.com/s3/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided" ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sudheer Yalamanchili",
- "image": "./sudheer.jpg",
- "bio": "Sudheer is a Cloud Application Architect at AWS ProServ.",
- "linkedin": "sudheeryalamanchili"
- }
- ]
-}
diff --git a/apigw-lambda-translate/example-pattern.json b/apigw-lambda-translate/example-pattern.json
deleted file mode 100644
index a57aa8854..000000000
--- a/apigw-lambda-translate/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "API Gateway REST API to Lambda function and AWS Translate",
- "description": "This pattern creates an Amazon API Gateway REST API and an AWS Lambda function that calls AWS Translate service.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "API Gateway REST API is integrated to AWS Lambda function which calls AWS Translate service"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-lambda-translate",
- "templateURL": "serverless-patterns/apigw-lambda-translate",
- "projectFolder": "apigw-lambda-translate",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Serverless Application Model",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-install.html"
- },
- {
- "text": "AWS Translate",
- "link": "https://aws.amazon.com/translate/"
- },
- {
- "text": "AWS Translate Languages",
- "link": "https://docs.aws.amazon.com/translate/latest/dg/pairs.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided" ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sudheer Yalamanchili",
- "image": "./sudheer.jpg",
- "bio": "Sudheer is a Cloud Application Architect at AWS ProServ.",
- "linkedin": "sudheeryalamanchili"
- }
- ]
-}
diff --git a/apigw-mappingtemplate-lambda-nodejs/example-pattern.json b/apigw-mappingtemplate-lambda-nodejs/example-pattern.json
deleted file mode 100644
index 824b25e9f..000000000
--- a/apigw-mappingtemplate-lambda-nodejs/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS API Gateway Regional API with mapping template to AWS Lambda",
- "description": "Create a Regional REST API with a mapping template in the integration request to pass to the lambda function.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This SAM template creates a Regional REST API with a mapping template in the integration request to pass to the lambda function.",
- "The AWS Lambda function is written in Node.js18. The function returns a small message and a status code to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-mappingtemplate-lambda-nodejs",
- "templateURL": "serverless-patterns/apigw-mappingtemplate-lambda-nodejs",
- "projectFolder": "apigw-mappingtemplate-lambda-nodejs",
- "templateFile": "apigw-mappingtemplate-lambda-nodejs/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with models and mapping templates",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/models-mappings.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Once the application is deployed, retrieve the API URL and open it in a browser page.",
- "You can also make the request from Postman or from a terminal using the curl command."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer in Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-mappingtemplate-lambda/example-pattern.json b/apigw-mappingtemplate-lambda/example-pattern.json
deleted file mode 100644
index d17983278..000000000
--- a/apigw-mappingtemplate-lambda/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon API Gateway REST API with Mapping templates for status code and parameter mapping.",
- "description": "Using mapping template to over-ride status, status code and body returned from the Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to map status codes and over-ride parameters in a REST API - Lambda integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-mappingtemplate-lambda",
- "templateURL": "serverless-patterns/apigw-mappingtemplate-lambda",
- "projectFolder": "apigw-mappingtemplate-lambda",
- "templateFile": "apigw-mappingtemplate-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Usage of mapping templates",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-override-request-response-parameters.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_IAM CAPABILITY_NAMED_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "D Surya Sai",
- "image": "https://photos.app.goo.gl/m4om6YSqu7Q2yKqw8",
- "bio": "A Serverless Cloud Engineer and technical writer, who works on building efficient and scalable solutions using AWS services.",
- "linkedin": "https://www.linkedin.com/in/d-surya-sai-64920416a"
- }
- ]
- }
-
diff --git a/apigw-method-cache/example-pattern.json b/apigw-method-cache/example-pattern.json
deleted file mode 100644
index 647c0151c..000000000
--- a/apigw-method-cache/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon API Gateway with cache enabled",
- "description": "Create a REST API Gateway with a method-level cache",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a method-level cache.",
- "The GET method on the root resource / is enabled with a cache and TTL (Time-To-Live) of 10 seconds.",
- "Any requests made within this 10 second period will be a cache hit and the cached response will be returned by API Gateway immediately without invoking the Lambda integration.",
- "The Lambda integration returns a timestamp in the header so that it is easy to visualize whether a particular response is being returned as a cached response or as a response from the Lambda integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-method-cache",
- "templateURL": "serverless-patterns/apigw-method-cache",
- "projectFolder": "apigw-method-cache",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create a REST API Gateway with a method-level cache",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-private-lambda/example-pattern.json b/apigw-private-lambda/example-pattern.json
deleted file mode 100644
index 99649e23e..000000000
--- a/apigw-private-lambda/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "AWS API Gateway Private API to AWS Lambda",
- "description": "Create an Private API Gateway integrated with Lambda",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway private API with a Lambda integration.",
- "The AWS Lambda function is written in Python3.9. The function returns a small message and a status code to the caller.",
- "The private API can only be invoked from the VPC endpoint defined in its resource policy"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-private-lambda",
- "templateURL": "serverless-patterns/apigw-private-lambda",
- "projectFolder": "apigw-private-lambda",
- "templateFile": "apigw-private-lambda/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "How to invoke a private API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-api-test-invoke-url.html"
- },
- {
- "text": "Create an interface VPC endpoint for API Gateway execute-api",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-apis.html#apigateway-private-api-create-interface-vpc-endpoint"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "To create the private API you need to already have in your environment : a VPC with an internet gateway, a public subnet with a NAT and an EC2 instance, a Security Group that allows port 443 from anywhere, a VPC Endpoint for execute-api associated with the private subnet, the security group and with Private DNS names ENABLED",
- "To be able to invoke a private API you need to : Log into an instance that is in the same VPC and subnet as your VPC Endpoint and in the same security group or which security group is allowed to make requests to the Enpoint's security group",
- "On the instance, open a terminal and execute the curl command with the API URL"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer for Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-resource-policy/example-pattern.json b/apigw-resource-policy/example-pattern.json
deleted file mode 100644
index ac85008d5..000000000
--- a/apigw-resource-policy/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon API Gateway with Resource Policy",
- "description": "Create a REST API Gateway with a Resource Policy for access control",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint that uses a Resource Policy for access control.",
- "The Resource Policy explicitly blacklists a list of IP ranges and also explicitly whitelists another list of IP ranges.",
- "If allowed by the Resource Policy, API Gateway will forward the request to a Lambda function which will output the received event object."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-resource-policy",
- "templateURL": "serverless-patterns/apigw-resource-policy",
- "projectFolder": "apigw-resource-policy",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Controlling access to an API with API Gateway resource policies",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-rest-api-dynamodb-sls/example-pattern.json b/apigw-rest-api-dynamodb-sls/example-pattern.json
deleted file mode 100644
index c9871aff9..000000000
--- a/apigw-rest-api-dynamodb-sls/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to Amazon DynamoDB",
- "description": "Create an Amazon API Gateway REST API that integrates with an Amazon DynamoDB table.",
- "language": "",
- "architectureURL": "",
- "videoId": "",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "apigateway",
- "to": "dynamodb"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API Gateway REST API that integrates with an Amazon DynamoDB table named \"Music\". ",
- "The API includes an API key and usage plan. The DynamoDB table includes a Global Secondary Index named \"Artist-Index\". ",
- "The API integrates directly with the DynamoDB API and supports \"PutItem\" and \"Query\" actions."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-dynamodb-sls",
- "templateURL": "serverless-patterns/apigw-rest-api-dynamodb-sls",
- "projectFolder": "apigw-rest-api-dynamodb-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using Amazon API Gateway as a proxy for DynamoDB",
- "link": "https://aws.amazon.com/blogs/compute/using-amazon-api-gateway-as-a-proxy-for-dynamodb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Dmitry Gulin, Modernization Architect, AWS",
- "name": "Dmitry Gulin",
- "bio": "Dmitry is a modernization architect for Professional Services at Amazon Web Services based in the US.",
- "imageURL": "https://www.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a?s=200"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-rest-api-eventbridge-sqs-sam/example-pattern.json b/apigw-rest-api-eventbridge-sqs-sam/example-pattern.json
deleted file mode 100644
index 982a60b8c..000000000
--- a/apigw-rest-api-eventbridge-sqs-sam/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "API Gateway REST API to EventBridge with event payload composition and SQS as target",
- "description": "Create an API Gateway that sends events to EventBridge and enriches the event in the integration request.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The APIGW payload is sent to EventBridge as a custom event payload. In the integration request, a custom payload is created and passed to EventBridge that target an SQS."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-eventbridge-sqs-sam",
- "templateURL": "serverless-patterns/apigw-rest-api-eventbridge-sqs-sam",
- "projectFolder": "apigw-rest-api-eventbridge-sqs-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale."
- }
- ]
-}
diff --git a/apigw-rest-api-eventbridge-terraform/example-pattern.json b/apigw-rest-api-eventbridge-terraform/example-pattern.json
deleted file mode 100644
index 6d474e9f6..000000000
--- a/apigw-rest-api-eventbridge-terraform/example-pattern.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "title": "API Gateway REST API to Amazon EventBridge",
- "description": "This pattern creates an Amazon API gateway REST API endpoint that uses a service integration to directly connect to Amazon EventBridge.",
- "language": "N/A",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API gateway REST API endpoint.",
- "The endpoint uses service integrations to directly connect to Amazon EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-eventbridge-terraform",
- "templateURL": "serverless-patterns/apigw-rest-api-eventbridge-terraform",
- "projectFolder": "apigw-rest-api-eventbridge-terraform",
- "templateFile": "apigw-rest-api-eventbridge-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Storage first integrations",
- "link": "https://aws.amazon.com/blogs/compute/building-storage-first-applications-with-http-apis-service-integrations/"
- }]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Carlos Bauer",
- "bio": "I am Technical Account Manager at AWS"
- }]
-}
diff --git a/apigw-rest-api-http-integration-terraform/example-pattern.json b/apigw-rest-api-http-integration-terraform/example-pattern.json
deleted file mode 100644
index 00fd06944..000000000
--- a/apigw-rest-api-http-integration-terraform/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon API Gateway with a HTTP integration in Terraform",
- "description": "Create a REST API Gateway with a public HTTP endpoint integration",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a simple public HTTP endpoint integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-http-integration-terraform",
- "templateURL": "serverless-patterns/apigw-rest-api-http-integration-terraform",
- "projectFolder": "apigw-rest-api-http-integration-terraform",
- "templateFile": "apigw-rest-api-http-integration-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create a REST API Gateway with a public HTTP endpoint integration",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-http-integrations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the Github repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [
- {
- "headline": "Presented by Sumit Bhati",
- "name": "Sumit Bhati",
- "image": "https://avatars.githubusercontent.com/u/139027745",
- "bio": "Senior Customer Solutions Manager at Amazon Web Services(AWS)",
- "linkedin": "https://www.linkedin.com/in/sumitbhati19"
- }
- ]
- }
-
diff --git a/apigw-rest-api-http-integration/example-pattern.json b/apigw-rest-api-http-integration/example-pattern.json
deleted file mode 100644
index 96e5f87df..000000000
--- a/apigw-rest-api-http-integration/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway with a HTTP integration",
- "description": "Create a REST API Gateway with a public HTTP endpoint integration",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a simple public HTTP endpoint integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-http-integration",
- "templateURL": "serverless-patterns/apigw-rest-api-http-integration",
- "projectFolder": "apigw-rest-api-http-integration",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create a REST API Gateway with a public HTTP endpoint integration",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/getting-started-http-integrations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-rest-api-kinesis-cdk/example-pattern.json b/apigw-rest-api-kinesis-cdk/example-pattern.json
deleted file mode 100644
index 05d4e874d..000000000
--- a/apigw-rest-api-kinesis-cdk/example-pattern.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon Kinesis",
- "description": "Create an Amazon API Gateway to Amazon Kinesis REST API",
- "language": "Typescript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon API Gateway REST API that integrates with an Amazon Kinesis Data Stream using the AWS Cloud Development Kit (AWS CDK) in Typescript."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-kinesis-cdk",
- "projectFolder": "apigw-rest-api-kinesis-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-kinesis-cdk/README.md",
- "templateURL": "serverless-patterns/apigw-rest-api-kinesis-cdk",
- "templateFile": "cdk/lib/apigw-kinesis-integration-stack.ts"
- }
- },
-"resources": {
- "headline": "Documentation",
- "bullets": [
- {
- "text": "Tutorial: Create a REST API as an Amazon Kinesis proxy in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-kinesis.html"
- },
- {
- "text": "How do I use API Gateway as a proxy for another AWS service?",
- "link": "https://repost.aws/knowledge-center/api-gateway-proxy-integrate-service"
- },
- {
- "text": "Amazon API Gateway API request and response data mapping reference",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html"
- },
- {
- "text": "API Gateway mapping template and access logging variable reference",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo README for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Mudassar Bashir",
- "bio": "Solutions Architect at Amazon Web Services.",
- "linkedin": "mudassar-bashir"
- },
- {
- "name": "Brittany Ly",
- "bio": "Solutions Architect at Amazon Web Services",
- "linkedin": "brittany-ly-173025b4"
- }
- ]
-}
diff --git a/apigw-rest-api-lambda-ecr/example-pattern.json b/apigw-rest-api-lambda-ecr/example-pattern.json
deleted file mode 100644
index a4a7ed32b..000000000
--- a/apigw-rest-api-lambda-ecr/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Amazon API Gateway to AWS Lambda Container Image",
- "description": "This AWS CDK application demonstrates how to deploy ASP.NET Core Web API (.NET 6) to AWS Lambda as Container Image.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses .NET as a programming language to create the entire AWS CDK stack. Many .NET customers have started their modernization journey by breaking monoliths into micro-services and containerizing them, as it gives them the flexibility to scale, save on costs and run applications consistently across environments. AWS Lambda is one of the most commonly known services on AWS and, this service has helped hundreds of thousands of customers to gain cloud native benefits and modernize their applications on AWS but until recently it did not support packaging containers as functions. But now AWS Lambda enables packaging and deploying functions as container images up to 10 GB. This combines the flexibility and familiarity of container tooling and the agility and operational simplicity of AWS Lambda. This feature will help customers who have invested in container tooling, development workflows and expertise to leverage the full benefits of AWS lambda along with containers. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-lambda-ecr",
- "projectFolder": "apigw-rest-api-lambda-ecr",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-lambda-ecr/README.md",
- "templateURL": "serverless-patterns/apigw-rest-api-lambda-ecr",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- },
- {
- "name": "Vijai Anand Ramalingam",
- "image": "https://avatars.githubusercontent.com/u/83067978?v=4",
- "bio": "Vijai Anand Ramalingam ia an Application Developer - ISV at Amazon Web Services",
- "linkedin": "vijai-anand-ramalingam-77439736"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-rest-api-lambda-efs-dotnet/example-pattern.json b/apigw-rest-api-lambda-efs-dotnet/example-pattern.json
deleted file mode 100644
index efbdce973..000000000
--- a/apigw-rest-api-lambda-efs-dotnet/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to AWS Lambda to Amazon EFS",
- "description": "This AWS CDK application demonstrates how to attach, configure and access Amazon EFS from AWS Lambda function.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern outlines a solution on accessing the Elastic File System (EFS) from an AWS Lambda. An ideal use case to connect to EFS from AWS Lambda is to process files shared across multiple components of the application. When a upstream components writes data to a file and a backend task needs to process the data for downstream component, utilizing a file storage with AWS Lambda yields desired results. EFS is a serverless, no maintenance file system that can be accessed from various AWS resources. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-lambda-efs-dotnet",
- "projectFolder": "apigw-rest-api-lambda-efs-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-lambda-efs-dotnet/README.md",
- "templateURL": "serverless-patterns/apigw-rest-api-lambda-efs-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- },
- {
- "name": "Vijai Anand Ramalingam",
- "image": "https://avatars.githubusercontent.com/u/83067978?v=4",
- "bio": "Vijai Anand Ramalingam ia an Application Developer - ISV at Amazon Web Services",
- "linkedin": "vijai-anand-ramalingam-77439736"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-rest-api-lambda-vpc-sqs/example-pattern.json b/apigw-rest-api-lambda-vpc-sqs/example-pattern.json
deleted file mode 100644
index bb4ebd3db..000000000
--- a/apigw-rest-api-lambda-vpc-sqs/example-pattern.json
+++ /dev/null
@@ -1,71 +0,0 @@
-{
- "title": "Amazon API Gateway REST API to AWS Lambda in VPC to SQS",
- "description": "Create a Rest API to send message to Lambda, then to SQS",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API with Dev stage, API key required for the authentication and a Lambda proxy integration. The API will send a message to the Lambda function that is in a VPC, and this function will send the message to SQS queue."
-
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-lambda-vpc-sqs",
- "templateURL": "serverless-patterns/apigw-rest-api-lambda-vpc-sqs",
- "projectFolder": "apigw-rest-api-lambda-vpc-sqs",
- "templateFile": "apigw-rest-api-lambda-vpc-sqs/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with REST APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html"
- },
- {
- "text": "Working with AWS Lambda proxy integrations",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html"
- },
- {
- "text": "API key",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-setup-api-key-with-console.html"
- },
- {
- "text": "Lambda in a VPC",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html"
- },
- {
- "text": "Lambda with SQS",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html"
- }
-
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Sana FATHALLAH",
- "image": "n/a",
- "bio": "I'm an AWS premium support engineer and I worked before as Full-Stack engineer",
- "linkedin": "n/a",
- "twitter": "n/a"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-rest-api-mock-integration/example-pattern.json b/apigw-rest-api-mock-integration/example-pattern.json
deleted file mode 100644
index d96bee294..000000000
--- a/apigw-rest-api-mock-integration/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon API Gateway with a Mock integration",
- "description": "Create a REST API Gateway with a Mock endpoint integration",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a simple Mock endpoint integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-mock-integration",
- "templateURL": "serverless-patterns/apigw-rest-api-mock-integration",
- "projectFolder": "apigw-rest-api-mock-integration",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create a REST API Gateway with a Mock endpoint integration",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-mock-integration.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-rest-api-vpclink/example-pattern.json b/apigw-rest-api-vpclink/example-pattern.json
deleted file mode 100644
index 8588ccfe1..000000000
--- a/apigw-rest-api-vpclink/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon API Gateway with a VPC Link integration",
- "description": "Create a REST API Gateway with a VPC Link integration",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a VPC Link integration.",
- "Since REST APIs only support VPC Links associated with NLBs (Network Load Balancers), this pattern assumes that an internal NLB already exists in a VPC in the same Region."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-api-vpclink",
- "templateURL": "serverless-patterns/apigw-rest-api-vpclink",
- "projectFolder": "apigw-rest-api-vpclink",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "REST API with VPC Link integration",
- "link": "https://docs.amazonaws.cn/en_us/apigateway/latest/developerguide/getting-started-with-private-integration.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-rest-edge-lambda/example-pattern.json b/apigw-rest-edge-lambda/example-pattern.json
deleted file mode 100644
index c6ede38f7..000000000
--- a/apigw-rest-edge-lambda/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "AWS API Gateway REST Edge-Optimized API to AWS Lambda",
- "description": "Create a REST Edge-Optimized API and a Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST Edge-Optimized API with a Lambda integration.",
- "The AWS Lambda function is written in Python3.9. The function returns a small message and a status code to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-edge-lambda",
- "templateURL": "serverless-patterns/apigw-rest-edge-lambda",
- "projectFolder": "apigw-rest-edge-lambda",
- "templateFile": "apigw-rest-edge-lambda/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Edge-optimized API endpoints",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-endpoint-types.html#api-gateway-api-endpoint-types-edge-optimized"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Once the application is deployed, click on the API URL provided as output.",
- "You can also make the request from Postman or from a terminal using the curl command."
-
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer at AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-rest-regional-lambda/example-pattern.json b/apigw-rest-regional-lambda/example-pattern.json
deleted file mode 100644
index 4ee3b13ac..000000000
--- a/apigw-rest-regional-lambda/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "AWS API Gateway Regional API to AWS Lambda",
- "description": "Create a Rest Regional API and a Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway Rest regional API with a Lambda integration.",
- "The AWS Lambda function is written in Python3.9. The function returns a small message and a status code to the caller.",
- "The inline code of the lambda is written in the template itself."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-rest-regional-lambda",
- "templateURL": "serverless-patterns/apigw-rest-regional-lambda",
- "projectFolder": "apigw-rest-regional-lambda",
- "templateFile": "apigw-rest-regional-lambda/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Set up a regional API in API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/create-regional-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Once the application is deployed, retrieve the API URL provided as output and open it in a browser page.",
- "You can also make the request from Postman or from a terminal using the curl command."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer in Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/apigw-route53-failover/example-pattern.json b/apigw-route53-failover/example-pattern.json
deleted file mode 100644
index 4e058a3e8..000000000
--- a/apigw-route53-failover/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Amazon Route53 to Amazon API Gateway failover",
- "description": "Creates a simple application with failover records in Route53",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The application exists in two seperate regions. One is a primary and the second is a secondary. Traffic will always be routed to the primary region unless there is an issue. If an issue with the primary region occurs, Route53 will route traffic to the secondary region. This example demonstrates the failover only and does not encompass authentication and data for the multiple regions."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-route53-failover",
- "templateURL": "serverless-patterns/apigw-route53-failovert",
- "projectFolder": "apigw-route53-failover"
- }
- },
- "resources": {
- "bullets": []
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
diff --git a/apigw-s3-proxy/example-pattern.json b/apigw-s3-proxy/example-pattern.json
deleted file mode 100644
index 4bd8c8d71..000000000
--- a/apigw-s3-proxy/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon API Gateway with a S3 integration",
- "description": "Create a REST API Gateway with a S3 read-only integration",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint with a S3 read-only integration",
- "The API exposes 3 GET methods:",
- "Root GET method: it provides a list of the S3 buckets of the account where the stack is deployed.",
- "{folder} GET method: it provides a list of the objects contained in the bucket {folder}",
- "{item} GET method: it returns the contents of the object {item}.",
- "The template also deploys an IAM role with S3 read-only capabilities that is used by API Gateway to integrate with S3.",
- "Since this is API Gateway effectively acts as a proxy S3, every GET method is protected by IAM authentication to prevent public access."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-s3-proxy",
- "templateURL": "serverless-patterns/apigw-s3-proxy",
- "projectFolder": "apigw-s3-proxy",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "REST API with S3 integration",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/integrating-api-with-aws-services-s3.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
diff --git a/apigw-sfn-cdk/example-pattern.json b/apigw-sfn-cdk/example-pattern.json
deleted file mode 100644
index 607fc7b59..000000000
--- a/apigw-sfn-cdk/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "API Gateway to Step Functions",
- "description": "Create an API Gateway HTTP APIs endpoint that starts a Step Functions synchronous Express Workflow.",
- "language": ".NET",
- "architectureURL": "",
- "videoId": "",
- "level":"300",
- "framework": "CDK",
- "services": {
- "from": "apigw",
- "to": "sfn"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern explains how to deploy a CDK application with Amazon API Gateway that invokes a syncronous Step Functions workflow."
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sfn-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sfn-cdk/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- ]
- },
- "author": {
- "headline": "Presented by James Eastham, Cloud Infrastructure Architect",
- "name": "James Eastham",
- "twitter": "plantpowerjames"
- }
-}
diff --git a/apigw-sfn-crud/example-pattern.json b/apigw-sfn-crud/example-pattern.json
deleted file mode 100644
index 26b69915e..000000000
--- a/apigw-sfn-crud/example-pattern.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "title": "Amazon API Gateway, AWS Step Functions, to Amazon DynamoDB CRUD API",
- "description": "Create a CRUD API with AWS Step Functions",
- "language": "OpenAPI",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This stack creates a fully functioning CRUD API powered by Amazon API Gateway direct integration to AWS Step Functions and backed by Amazon DynamoDB."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sfn-crud",
- "templateURL": "serverless-patterns/apigw-sfn-crud",
- "projectFolder": "apigw-sfn-crud",
- "templateFile": "template.yaml"
- }
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
- }
\ No newline at end of file
diff --git a/apigw-sns-sms/example-pattern.json b/apigw-sns-sms/example-pattern.json
deleted file mode 100644
index 75d8a8be8..000000000
--- a/apigw-sns-sms/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Amazon API Gateway REST API with SNS SMS integration",
- "description": "Send SMS messages from API Gateway using SNS",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to send a SMS messages using API Gateway."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sns-sms",
- "templateURL": "serverless-patterns/apigw-sns-sms",
- "projectFolder": "apigw-sns-sms",
- "templateFile": "apigw-sns-sms/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "REST API with SNS integration",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-proxy-integrate-service/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Siddhi Jha",
- "image": "https://drive.google.com/file/d/1H62Y6-JfUTiT-gIwDRYH6R45y7KJVHvN/view",
- "bio": "A Serverless Cloud Engineer who works on building scalable, economic and sustainable solutions using AWS",
- "linkedin": "https://www.linkedin.com/in/siddhi-jha/"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/apigw-sqs-cdk-typescript/example-pattern.json b/apigw-sqs-cdk-typescript/example-pattern.json
deleted file mode 100644
index 22296ea77..000000000
--- a/apigw-sqs-cdk-typescript/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon SQS",
- "description": "Create an Amazon API Gateway HTTP API that integrates with an Amazon SQS queue.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains sample AWS CDK code to create an API Gateway Rest API, as well as, an SQS Queue.",
- "The API Gateway publishes requests to the SQS Queue. In this example, POST request sent to API Gateway will be directed to the SQS queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sqs-cdk-typescript",
- "templateURL": "serverless-patterns/apigw-sqs-cdk-typescript",
- "projectFolder": "apigw-sqs-cdk-typescript",
- "templateFile": "apigw-sqs-cdk-typescript/lib/apigw-sqs-cdk-stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with REST APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html"
- },
- {
- "text": "Basic tasks of an API integration request",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/integration-request-basic-setup.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ryan See",
- "image": "https://media.licdn.com/dms/image/C5603AQHs8qKE6cec5w/profile-displayphoto-shrink_800_800/0/1610320704421?e=2147483647&v=beta&t=BXxxOIEVE3xKmnghCLoLmUZ6MJ7Ptk1h4cOihVNj8aE",
- "bio": "Ryan is a Solutions Architect at AWS.",
- "linkedin": "ryanseee"
- }
- ]
-}
diff --git a/apigw-sqs-lambda-ddb-cdk/example-pattern.json b/apigw-sqs-lambda-ddb-cdk/example-pattern.json
deleted file mode 100644
index f8e0e42ee..000000000
--- a/apigw-sqs-lambda-ddb-cdk/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon SQS to AWS Lambda to Amazon DynamoDB",
- "description": "This pattern explains how to deploy a AWS CDK application with Amazon API Gateway, Amazon SQS, AWS Lambda, and Amazon DynamoDB. When an HTTP POST request is made to the Amazon API Gateway endpoint, Gateway authorizes the request by checking Basic auth credentials and on valid credentials, request payload is sent to Amazon Simple Queue Service. AWS Lambda function consumes event from the Queue and inserts the event/payload into the Amazon DynamoDB table. Amazon Simple Queue Service is also configured with a Dead Letter Queue where events are sent when retries to process those messages are repeatedly failed.",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with route /submit configured with basic authentication.",
- "On receiving a request, API Gateway will invoke a Lambda authorizer which validates the request and returns a policy informing API Gateway to accept or deny the request.",
- "When request is accepted, API Gateway sends the message payload to a queue in SQS. SQS uses another queue as Dead Letter Queue to send the messages in case of continued failures to process the messages from downstream lambda.",
- "Messages from SQS is posted to a lambda function to process them.",
- "Lambda function receives the messages from SQS and saves them into a DynamoDB table."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw_sqs_lambda_ddb_cdk",
- "templateURL": "serverless-patterns/apigw_sqs_lambda_ddb_cdk",
- "projectFolder": "vapigw_sqs_lambda_ddb_cdk",
- "templateFile": "apigw_sqs_lambda_ddb_cdk/apigw_sqs_lambda_ddb_cdk/apigw_sqs_lambda_ddb_cdk_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda Authorizers",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html"
- },
- {
- "text": "Amazon SQS dead-letter queues",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html"
- },
- {
- "text": "Working with HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Philippe Bosle",
- "bio": "Philippe is a Technical Account Manager at Amazon Web Services based in Switzerland.",
- "linkedin": "philippe-bosle-91b03ba0"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-sqs-lambda-ddb/example-pattern.json b/apigw-sqs-lambda-ddb/example-pattern.json
deleted file mode 100644
index 9ca9defd3..000000000
--- a/apigw-sqs-lambda-ddb/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "Amazon API Gateway to Amazon SQS to AWS Lambda to Amazon DynamoDB",
- "description": "This pattern explains how to deploy a SAM application with Amazon API Gateway, Amazon SQS, AWS Lambda, and Amazon DynamoDB. When an HTTP POST request is made to the Amazon API Gateway endpoint, Gateway authorizes the request by checking Basic auth credentials and on valid credentials, request payload is sent to Amazon Simple Queue Service. AWS Lambda function consumes event from the Queue and inserts the event/payload into the Amazon DynamoDB table. Amazon Simple Queue Service is also configured with a Dead Letter Queue where events are sent when retries to process those messages are repeatedly failed.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway HTTP API with route /submit configured with basic authentication.",
- "On receiving a request, API Gateway will invoke a Lambda authorizer which validates the request and returns a policy informing API Gateway to accept or deny the request.",
- "When request is accepted, API Gateway sends the message payload to a queue in SQS. SQS uses another queue as Dead Letter Queue to send the messages in case of continued failures to process the messages from downstream lambda.",
- "Messages from SQS is posted to a lambda function to process them.",
- "Lambda function receives the messages from SQS and saves them into a DynamoDB table."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sqs-lambda-ddb",
- "templateURL": "serverless-patterns/apigw-sqs-lambda-ddb",
- "projectFolder": "apigw-sqs-lambda-ddb",
- "templateFile": "apigw-sqs-lambda-ddb/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda Authorizers",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html"
- },
- {
- "text": "Amazon SQS dead-letter queues",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html"
- },
- {
- "text": "Working with HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Ravi Kiran Ganji",
- "bio": "I am a Senior Cloud Application Architect at AWS Professional Services, and Serverless Enthusiast.",
- "linkedin": "ravi-kiran-ganji"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-sqs-lambda-java/example-pattern.json b/apigw-sqs-lambda-java/example-pattern.json
deleted file mode 100644
index 3d1162fc6..000000000
--- a/apigw-sqs-lambda-java/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway HTTP API to SQS",
- "description": "Create an Amazon API Gateway HTTP API that integrates with an Amazon SQS queue.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "Create an Amazon API Gateway HTTP API that integrates with an Amazon SQS queue.",
- "text": [
- "In this pattern, called Queue based leveling, a serverless queue is introduced between your API Gateway and your workers, a Lambda function in this case.",
- "The queue acts as a buffer to alleviate traffic spikes and ensure your workload can sustain the arriving load by buffering all the requests durably.",
- "It also helps downstream consumers to process the incoming requests at a consistent pace."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-sqs-lambda-java",
- "templateURL": "serverless-patterns/apigw-sqs-lambda-java",
- "projectFolder": "apigw-sqs-lambda-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "lLyas Bakouch",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ilyas-bakouch.jpg",
- "bio": "Senior Solutions Architect, AWS.",
- "twitter": "@isbkch"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect, AWS."
- }
- ]
-}
diff --git a/apigw-throttle-sam/example-pattern.json b/apigw-throttle-sam/example-pattern.json
deleted file mode 100644
index 2c7edc01f..000000000
--- a/apigw-throttle-sam/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon API Gateway throttle configuration usign AWS SAM",
- "description": "Create an Amazon API Gateway application with throttling set in multiple places.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern configures the default throttling for this API endpoint to be less than the regional default. It also sets granular throttling at the resource and method level."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-throttle-sam",
- "templateURL": "serverless-patterns/apigw-throttle-sam",
- "projectFolder": "apigw-throttle-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "API Gateway Throttling",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
\ No newline at end of file
diff --git a/apigw-usage-plans/example-pattern.json b/apigw-usage-plans/example-pattern.json
deleted file mode 100644
index 36e308418..000000000
--- a/apigw-usage-plans/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "API Gateway Usage Plan",
- "description": "This pattern creates an Amazon API Gateway REST API with a Usage Plan",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The API Gateway Usage Plan demonstrates stage level throttling and quotas as well as method level throttling. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-usage-plans",
- "templateURL": "serverless-patterns/apigw-usage-plans",
- "projectFolder": "apigw-usage-plans"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Happy little API shorts - Usage Plans and API Keys",
- "link": "https://s12d.com/hlas-usage-plans"
- },
- {
- "text": "API Gateway Usage Plans",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}
diff --git a/apigw-websocket-api-connection-dynamodb/example-pattern.json b/apigw-websocket-api-connection-dynamodb/example-pattern.json
deleted file mode 100644
index 46060c9a6..000000000
--- a/apigw-websocket-api-connection-dynamodb/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway WebSocket API connection ID tracking",
- "description": "Track API Gateway WebSocket API connections using AWS Service integration with DynamoDB",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses Amazon API Gateway WebSocket API and AWS Service integration type with AmazonDynamoDB for client connection tracking.",
- "This approach simplifies architecture by eliminating need to use additional compute components such as AWS Lambda."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-connection-dynamodb",
- "templateURL": "serverless-patterns/apigw-websocket-api-connection-dynamodb",
- "projectFolder": "apigw-websocket-api-connection-dynamodb",
- "templateFile": "apigw-websocket-api-connection-dynamodb/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with WebSocket APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html"
- },
- {
- "text": "Extended examples of this pattern implementation",
- "link": "https://github.com/aws-samples/serverless-samples/tree/main/apigw-ws-integrations"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Giedrius Praspaliauskas",
- "image": "",
- "bio": "Giedrius is a senior solutions architect focusing on serverless at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/gpraspaliauskas/",
- "twitter": ""
- }
- ]
-}
diff --git a/apigw-websocket-api-sfn-async/example-pattern.json b/apigw-websocket-api-sfn-async/example-pattern.json
deleted file mode 100644
index fe6b071a4..000000000
--- a/apigw-websocket-api-sfn-async/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway WebSocket API to Step Functions Standard (Asynchronous Execution)",
- "description": "Start Step Functions Standard Workflow asynchronous execution via WebSocket API",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses Amazon API Gateway WebSocket API and AWS Service integration type with AWS Step Functions workflow as a business logics implementation.",
- "This approach simplifies architecture by eliminating need to use additional compute components such as AWS Lambda."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-sfn-async",
- "templateURL": "serverless-patterns/apigw-websocket-api-sfn-async",
- "projectFolder": "apigw-websocket-api-sfn-async",
- "templateFile": "apigw-websocket-api-sfn-async/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with WebSocket APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html"
- },
- {
- "text": "Extended examples of this pattern implementation",
- "link": "https://github.com/aws-samples/serverless-samples/tree/main/apigw-ws-integrations"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Giedrius Praspaliauskas",
- "image": "",
- "bio": "Giedrius is a senior solutions architect focusing on serverless at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/gpraspaliauskas/",
- "twitter": ""
- }
- ]
-}
diff --git a/apigw-websocket-api-sfn-sync/example-pattern.json b/apigw-websocket-api-sfn-sync/example-pattern.json
deleted file mode 100644
index be1f7b763..000000000
--- a/apigw-websocket-api-sfn-sync/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway WebSocket API to Step Functions Express (Synchronous Execution)",
- "description": "Start Step Functions Express Workflow synchronous execution via WebSocket API",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses Amazon API Gateway WebSocket API and AWS Service integration type with AWS Step Functions workflow as a business logics implementation.",
- "This approach simplifies architecture by eliminating need to use additional compute components such as AWS Lambda."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-sfn-sync",
- "templateURL": "serverless-patterns/apigw-websocket-api-sfn-sync",
- "projectFolder": "apigw-websocket-api-sfn-sync",
- "templateFile": "apigw-websocket-api-sfn-sync/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with WebSocket APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html"
- },
- {
- "text": "Extended examples of this pattern implementation",
- "link": "https://github.com/aws-samples/serverless-samples/tree/main/apigw-ws-integrations"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Giedrius Praspaliauskas",
- "image": "",
- "bio": "Giedrius is a senior solutions architect focusing on serverless at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/gpraspaliauskas/",
- "twitter": ""
- }
- ]
-}
diff --git a/apigw-websocket-api-sns/example-pattern.json b/apigw-websocket-api-sns/example-pattern.json
deleted file mode 100644
index 9b55cb4a9..000000000
--- a/apigw-websocket-api-sns/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API WebSocket to SNS with request validation",
- "description": "Create a WebSocket API to send notification via SNS topic with request validation",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use WebSocket API to integrate with Amazon Simple Notification service (SNS) to send notifications. This pattern also implements data validation in WebSocket API using model in API Gateway.",
- "This pattern is utilizing native AWS Integration between WebSocket API Gateway and SNS. Request template is used in WebSocket integration to map the input to SNS payload.",
- "This pattern is also a workaround to invoke AWS services in WebSocket API which requires Content-Type header to be application/x-www-form-urlencoded. By default, WebSocket APIs do not support overriding headers from AWS console by default",
- "This pattern deploys one API Gateway and one SNS topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-sns",
- "templateURL": "serverless-patterns/apigw-websocket-api-sns",
- "projectFolder": "apigw-websocket-api-sns",
- "templateFile": "apigw-websocket-api-sns/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Request validation in WebSocket API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-request-validation.html"
- },
- {
- "text": "Mapping template in WebSocket API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-data-transformations.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "sam delete"
- ]
- },
- "authors": [
- {
- "name": "Bharat Sahni",
- "image": "https://drive.google.com/file/d/1ajooLmbTGN2KI2IcehV4neB2rHxGzZD2/view",
- "bio": "Bharat Sahni is a Cloud Support Engineer 2 in Serverless team at AWS based in BLR, India.",
- "linkedin": "https://www.linkedin.com/in/sahnibharat/"
- }
- ]
-}
diff --git a/apigw-websocket-api-sqs-lambda-java/example-pattern.json b/apigw-websocket-api-sqs-lambda-java/example-pattern.json
deleted file mode 100644
index 396d8bb27..000000000
--- a/apigw-websocket-api-sqs-lambda-java/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "API Gateway WebSocket API to SQS to AWS Lambda",
- "description": "Create an API Gateway websocket API that sends events to SQS and then to Lambda",
- "language": "Java",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "Create an API Gateway websocket API that sends events to SQS and then to Lambda",
- "text": [
- "This pattern creates an Amazon API Gateway WebSocket API which sends inbound messages to an Amazon SQS FIFO queue. The queue is processed by an AWS Lambda function to return a result.",
- "The queue acts as a buffer to alleviate traffic spikes and ensure your workload can sustain the arriving load by buffering all the requests durably. It also helps downstream consumers to process the incoming requests at a consistent pace. A FIFO (First-In-First-Out) queue is used to ensure that evens are processed in order of arrival."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-sqs-lambda-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with Websocket APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html"
- },
- {
- "text": "Lambda Function Handler",
- "link": "https://docs.aws.amazon.com/whitepapers/latest/serverless-architectures-lambda/the-handler.html"
- },
- {
- "text": "Amazon SQS FIFO (First-In-First-Out) queues",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: `sam delete --stack-name STACK_NAME`.",
- "Confirm the stack has been deleted: `aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"`"
- ]
- },
- "authors": [
- {
- "name": "Steven Warwick",
- "image": "https://serverlessland.com/assets/images/resources/contributors/steven-warwick.jpg",
- "bio": "Steven Warwick is a Solutions Architect at AWS. He is an engineer at heart with a passion for creating simple solutions to complex problems. He has a background in real time analytics and a passion for SaaS implementations. In his free time, he plays badminton and tinkers with IoT projects around the house.",
- "twitter": "@StevenCWarwick"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/apigw-websocket-api-sqs-lambda-terraform/example-pattern.json b/apigw-websocket-api-sqs-lambda-terraform/example-pattern.json
deleted file mode 100644
index 8afcb5696..000000000
--- a/apigw-websocket-api-sqs-lambda-terraform/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "API Gateway WebSocket API to SQS to AWS Lambda",
- "description": "This pattern creates an Amazon API Gateway WebSocket API which sends inbound messages to an Amazon SQS FIFO queue. The queue is processed by an AWS Lambda function to return a result.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The API Gateway handles websocket message events by putting the message into a SQS FIFO (First-In-First-Out) queue.",
- "The SQS FIFO queue is used to ensure processing order of the websocket messages.",
- "The message payload must contain a MessageGroupId field which is used by SQS FIFO queue.",
- "If message order is not required, a standard SQS queue can also be used and the message payload would not require the MessageGroupId field.",
- "The API Gateway websocket request integration passes the connectionId and requestId as metadata and the message body as the payload.",
- "The Lambda function can now process the SQS FIFO requests in a batch manner (10 requests at a time) and send a response back to the websocket connection."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/apigw-websocket-api-sqs-lambda-terraform",
- "templateURL": "serverless-patterns/apigw-websocket-api-sqs-lambda-terraform",
- "projectFolder": "apigw-websocket-api-sqs-lambda-terraform",
- "templateFile": "apigw-websocket-api-sqs-lambda-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Working with WebSocket APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api.html"
- },
- {
- "text": "Announcing WebSocket APIs in Amazon API Gateway",
- "link": "https://aws.amazon.com/blogs/compute/announcing-websocket-apis-in-amazon-api-gateway/"
- },
- {
- "text": "Lambda Function Handler",
- "link": "https://docs.aws.amazon.com/whitepapers/latest/serverless-architectures-lambda/the-handler.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Carlos Bauer",
- "bio": "I am Technical Account Manager at AWS"
- }]
-}
\ No newline at end of file
diff --git a/appconfig-feature-flag-cdk/example-pattern.json b/appconfig-feature-flag-cdk/example-pattern.json
deleted file mode 100644
index 5fd374a6c..000000000
--- a/appconfig-feature-flag-cdk/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "AppConfig Feature Flag with CDK (Typescript)",
- "description": "Set up AppConfig Feature Flag with CDK and read the status from Appconfig Extension for Lambda",
- "language": "typescript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to implement a feture flag into AppConfig using AWS CDK.",
- "Also this demonstrates the usage of AppConfig extension for Lambda, to retrieve the status of the Feature Flag."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appconfig-feature-flag-cdk",
- "templateURL": "serverless-patterns/appconfig-feature-flag-cdk",
- "projectFolder": "appconfig-feature-flag-cdk",
- "templateFile": "appconfig-feature-flag-cdk/app-config-feature-flag-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AppConfig",
- "link": "https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html"
- },
- {
- "text": "AppConfig Feature Flags",
- "link": "https://aws.amazon.com/blogs/mt/using-aws-appconfig-feature-flags/"
- },
- {
- "text": "AppConfig Lambda Extension",
- "link": "https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions.html"
- },
- {
- "text": "AppConfig region specific Lambda Extension versions",
- "link": "https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions-versions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all --parameters appConfigExtensionArn='[AppConfig Extension version ARN]'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusisast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
diff --git a/appconfig-lambda-rust/example-pattern.json b/appconfig-lambda-rust/example-pattern.json
deleted file mode 100644
index 77edf060f..000000000
--- a/appconfig-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS AppConfig integration with Lambda extensions",
- "description": "AWS AppConfig integration with Lambda extensions.",
- "language": "Rust",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The AppConfig extension takes care of calling the AWS AppConfig service, managing a local cache of retrieved data, tracking the configuration tokens needed for the next service calls, and periodically checking for configuration updates in the background. By default, you have 1000 TPS. After the first request, the profile is cached, so from now on, you hit the internal cache of AppConfig. We can use the Lambda Execution Context to avoid calling the AWS AppConfig cached service.",
- "This pattern deploys one Lambda function with AppConfig extension in the Lambda layer."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appconfig-lambda-rust",
- "templateURL": "serverless-patterns/appconfig-lambda-rust",
- "projectFolder": "appconfig-lambda-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS AppConfig integration with Lambda extensions",
- "link": "https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "make deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: make delete
."
- ]
- },
- "authors": [
- {
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
\ No newline at end of file
diff --git a/appsync-cognito-lambda-cdk/example-pattern.json b/appsync-cognito-lambda-cdk/example-pattern.json
deleted file mode 100644
index 03d76f094..000000000
--- a/appsync-cognito-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Authenticate AppSync Api with Cognito",
- "description": "Create an appsync api and authenticate all request with AWS Cognito User Pools.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample projects demonstrates how to use AWS Cognito to authenticate an AWS Appsync API with lambda resolvers.The same concept can be applied to vtl resolvers as well.",
- "This pattern deploys one appsync api, with a direct lamda resolver."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-cognito-lambda-cdk",
- "templateURL": "serverless-patterns/appsync-cognito-lambda-cdk",
- "projectFolder": "appsync-cognito-lambda-cdk",
- "templateFile": "appsync-cognito-lambda-cdk/lib/cognito-auth-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS CDK- Define cloud infrastructure using familiar programming languages",
- "link": "https://aws.amazon.com/cdk/"
- },
- {
- "text": "AWS Appsync - Accelerate application development with serverless GraphQL and Pub/Sub APIs",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "Amazon Cognito - Implement secure, frictionless customer identity and access management that scales",
- "link": "https://aws.amazon.com/cognito/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Rosius Ndimofor",
- "image": "https://rosius.s3.us-east-2.amazonaws.com/ro.jpeg",
- "bio": "AWS Serverless Hero with a high affinity for building fullstack serverless apps",
- "linkedin": "rosius",
- "twitter": "atehrosius"
- }
- ]
-}
diff --git a/appsync-dynamodb-singletable-cdk/example-pattern.json b/appsync-dynamodb-singletable-cdk/example-pattern.json
deleted file mode 100644
index 896512d67..000000000
--- a/appsync-dynamodb-singletable-cdk/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "AWS AppSync to Amazon DynamoDB - Single table design",
- "description": "Creates an AppSync API with a schema and a resolver to a DynamoDB table following the single table design model",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template creates an AppSync api that uses a DynamoDB resolver.",
- "The `getParentAndChildren` resolver demonstrates using a custom resolver to format results from a single table design for AppSync."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-dynamodb-singletable-cdk",
- "templateURL": "serverless-patterns/appsync-dynamodb-singletable-cdk",
- "projectFolder": "appsync-dynamodb-singletable-cdk/cdk",
- "templateFile": "appsync-dynamodb-singletable-cdk/cdk/lib/cognito-auth-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS CDK- Define cloud infrastructure using familiar programming languages",
- "link": "https://aws.amazon.com/cdk/"
- },
- {
- "text": "AWS Appsync - Accelerate application development with serverless GraphQL and Pub/Sub APIs",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "Amazon Cognito - Implement secure, frictionless customer identity and access management that scales",
- "link": "https://aws.amazon.com/cognito/"
- }
- ]
- },
- "deploy": {
- "text": ["npx aws-cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk delete
."]
- },
- "authors": [
- {
- "name": "Michael Liendo",
- "image": "https://pbs.twimg.com/profile_images/1610321865213444096/OttGok0S_400x400.jpg",
- "bio": "Senior Developer Advocate | AWS AppSync 🦦",
- "linkedin": "focusotter",
- "twitter": "focusotter"
- }
- ]
-}
diff --git a/appsync-dynamodb-singletable-js-resolver/example-pattern.json b/appsync-dynamodb-singletable-js-resolver/example-pattern.json
deleted file mode 100644
index 4ff4702a3..000000000
--- a/appsync-dynamodb-singletable-js-resolver/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "AppSync to DynamoDB using JS Resolvers",
- "description": "Use AppSync JS Resolvers to query a DynamoDB table using single table design.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project creates an AppSync API with a schema and a javascript pipeline resolver to query a DynamoDB table following a single table design model.",
- "Using JS pipeline resolvers can help you easily transform your query to retrieve nested records in your DynamoDB table in a single API call."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-dynamodb-singletable-js-resolver",
- "templateURL": "serverless-patterns/appsync-dynamodb-singletable-js-resolver",
- "projectFolder": "appsync-dynamodb-singletable-js-resolver",
- "templateFile": "appsync-dynamodb-singletable-js-resolver/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Appsync",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "AWS AppSync - JS Resolvers",
- "link": "https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html"
- },
- {
- "text": "AWS AppSync - SAM Appsync Abstraction",
- "link": "https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-graphqlapi.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alexis Philippart de Foy",
- "image": "https://media.licdn.com/dms/image/C4D03AQFyN5GLrFk-0g/profile-displayphoto-shrink_800_800/0/1586853008031?e=1693440000&v=beta&t=0BtjX92oZxhHUrrIzh55wah8V1OiwOAOyigPtfAcZdo",
- "bio": " I am a Startup Solutions Architect, Serverless Enthusiast and former startup founder.",
- "linkedin": "apdf",
- "twitter": "@aphilippartd"
- }
- ]
-}
\ No newline at end of file
diff --git a/appsync-eventbridge-datasource/example-pattern.json b/appsync-eventbridge-datasource/example-pattern.json
deleted file mode 100644
index 0e8bad885..000000000
--- a/appsync-eventbridge-datasource/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Appsync to EventBridge directly using Appsync Datasource",
- "description": "The AWS AppSync resolver function request and response used with the EventBridge data source allows you to send custom events to the Amazon EventBridge bus.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to integrate Amazon EventBridge with AWS Appsync.",
- "This pattern deploys one AWS Appsync api, one custom EventBus, and one appsync Javascript function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-eventbridge-datasource",
- "templateURL": "serverless-patterns/appsync-eventbridge-datasource",
- "projectFolder": "appsync-eventbridge-datasource",
- "templateFile": "lib/appsync-eventbridge-datasource-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "CDK Custom Resource",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.custom_resources.AwsCustomResource.html"
- },
- {
- "text": "Call Amazon SQS with Step Functions",
- "link": "https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-eventbridge-js.html/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Shankar Srinivasan",
- "bio": "I am a Cloud Application Architect at AWS. I specialize in architecting and developing serverless, event-driven solutions on AWS.",
- "linkedin": "https://www.linkedin.com/in/shankar-srinivasan-3863a110"
- }
- ]
-}
diff --git a/appsync-lambda-kendra/example-pattern.json b/appsync-lambda-kendra/example-pattern.json
deleted file mode 100644
index 8ea98e6cb..000000000
--- a/appsync-lambda-kendra/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "AppSync Query Amazon Kendra",
- "description": "An AWS Serverless Pattern to demonstrate integration of AppSync, Lambda and Kendra.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "An AWS Serverless Pattern to demonstrate integration of AppSync, Lambda and Kendra."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-lambda-kendra",
- "templateURL": "serverless-patterns/appsync-lambda-kendra",
- "projectFolder": "appsync-lambda-kendra",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS AppSync - Accelerate application development with serverless GraphQL and Pub/Sub APIs.",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "Amazon Kendra - Intelligent enterprise search service that helps you search across different content repositories with built-in connectors",
- "link": "https://aws.amazon.com/pm/kendra/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sayan Moitra",
- "image": "./smoitra.png",
- "bio": "Sayan is a Solutions Architect at Amazon Web Services based in India.",
- "linkedin": "sayanmoitra"
- }
- ]
-}
diff --git a/appsync-lambda-sfn-cdk/example-pattern.json b/appsync-lambda-sfn-cdk/example-pattern.json
deleted file mode 100644
index b7289d2f5..000000000
--- a/appsync-lambda-sfn-cdk/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "Invoke a Step functions workflow from Appsync",
- "description": "Invoke a step functions workflow through a lambda resolver from Appsync",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to Invoke a Step functions workflow, using Appsync and a Lambda resolver.",
- "This pattern deploys an Appsync Api, a lambda resolver, a DynamoDB and a Step Function workflow using CDK."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-lambda-sfn-cdk",
- "templateURL": "serverless-patterns/appsync-lambda-sfn-cdk",
- "projectFolder": "appsync-lambda-sfn-cdk",
- "templateFile": "appsync-lambda-sfn-cdk/cdk_momo/cdk_momo_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS CDK- Define cloud infrastructure using familiar programming languages",
- "link": "https://aws.amazon.com/cdk/"
- },
- {
- "text": "AWS Appsync - Accelerate application development with serverless GraphQL and Pub/Sub APIs",
- "link": "https://aws.amazon.com/appsync/"
- },
-
- {
- "text": "AWS Step functions- Visual workflows for modern applications",
- "link": "https://aws.amazon.com/step-functions"
- },
- {
- "text": "Amazon DynamoDB - Fast, flexible NoSQL database service for single-digit millisecond performance at any scale",
- "link": "https://aws.amazon.com/dynamodb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Rosius Ndimofor",
- "image": "https://rosius.s3.us-east-2.amazonaws.com/ro.jpeg",
- "bio": "AWS Serverless Hero with a high affinity for building fullstack serverless apps.",
- "linkedin": "rosius",
- "twitter": "atehrosius"
- }
- ]
-}
diff --git a/appsync-lambda-sfn-sam/example-pattern.json b/appsync-lambda-sfn-sam/example-pattern.json
deleted file mode 100644
index 0ec5d6891..000000000
--- a/appsync-lambda-sfn-sam/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Invoke a Step functions workflow from Appsync",
- "description": "Invoke a step functions workflow through a lambda resolver from Appsync",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to Invoke a Step functions workflow, using Appsync and a Lambda resolver.",
- "This pattern deploys an Appsync Api, a lambda resolver, a DynamoDB and a Step Function workflow."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-lambda-sfn-sam",
- "templateURL": "serverless-patterns/appsync-lambda-sfn-sam",
- "projectFolder": "appsync-lambda-sfn-sam",
- "templateFile": "appsync-lambda-sfn-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Appsync - Accelerate application development with serverless GraphQL and Pub/Sub APIs",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "AWS Step functions- Visual workflows for modern applications",
- "link": "https://aws.amazon.com/step-functions"
- },
- {
- "text": "Amazon DynamoDB - Fast, flexible NoSQL database service for single-digit millisecond performance at any scale",
- "link": "https://aws.amazon.com/dynamodb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Rosius Ndimofor",
- "image": "https://rosius.s3.us-east-2.amazonaws.com/ro.jpeg",
- "bio": "AWS Serverless Hero with a high affinity for building fullstack serverless apps.",
- "linkedin": "rosius",
- "twitter": "atehrosius"
- }
- ]
-}
diff --git a/appsync-mongodb/example-pattern.json b/appsync-mongodb/example-pattern.json
deleted file mode 100644
index f4bf4aabc..000000000
--- a/appsync-mongodb/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AppSync to MongoDB",
- "description": "Perform a write and list operation from AWS AppSync to Amazon DynamoDB that is protected with an idenity pool and userpool from Amazon Cognito.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to connect directly to a MongoDB Atlas cluster using AWS Appsync.",
- "Connecting directly to MongoDB requires the use of their Data API and AppSync's HTTP resolver.",
- "In doing so, there is no need for a proxying Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-mongodb",
- "templateURL": "serverless-patterns/appsync-mongodb",
- "projectFolder": "appsync-mongodb",
- "templateFile": "appsync-mongodb/cdk/lib/main.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Blog post: The fullstack guide to using AWS AppSync and MongoDB Atlas",
- "link": "https://aws.amazon.com/blogs/mobile/the-fullstack-guide-to-using-aws-appsync-and-mongodb-atlas/"
- },
- {
- "text": "Amazon AppSync - Managed GraphQL service",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "Fullstack repo",
- "link": "https://github.com/focusOtter/fullstack-appsync-mongodb"
- }
- ]
- },
- "deploy": {
- "text": ["npx aws-cdk deploy
"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: npx aws-cdk destroy
."]
- },
- "authors": [
- {
- "name": "Michael Liendo 🦦",
- "image": "https://pbs.twimg.com/profile_images/1610321865213444096/OttGok0S_400x400.jpg",
- "bio": "Michael Liendo is a fullstack developer, avid taco eater, and Senior Developer Advocate for AWS AppSync.",
- "linkedin": "focusotter",
- "twitter": "focusotter"
- }
- ]
-}
diff --git a/appsync-notify-subscribers-of-database-updates/example-pattern.json b/appsync-notify-subscribers-of-database-updates/example-pattern.json
deleted file mode 100644
index 714b62e69..000000000
--- a/appsync-notify-subscribers-of-database-updates/example-pattern.json
+++ /dev/null
@@ -1,82 +0,0 @@
-{
- "title": "appsync-notify-subscribers-of-database-updates",
- "description": "Asynchronous updates via WebSockets with AWS AppSync and GraphQL",
- "language": "Node.js",
- "architectureURL": "",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "eventbridge",
- "to": "appsync"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a EventBridge, AppSync. We have described how to use Amazon EventBridge to simplify publishing out-of-band database updates to AppSync subscribers. By using EventBridge rules and input transformers, we created a GraphQL mutation payload that was sent to AppSync using an API destination without the need to write a Lambda function or specific code that would need to be maintained.",
- "With AppSync and EventBridge, you can seamlessly push data changes and events from your cloud backend all the way to thousands of connected front-end web and mobile clients with built-in WebSockets connection management leveraging flexible serverless technologies that scale automatically according to demand.(c)"
- ]
- },
- "deploy": {
- "text": [
- "sam deploy -g --capabilities CAPABILITY_AUTO_EXPAND CAPABILITY_IAM"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "",
- "templateURL": "",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "How do I notify AWS AppSync subscribers of external database updates that aren't performed by client-side mutations?(article)",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/appsync-notify-subscribers-real-time/"
- },
- {
- "text": "How do I notify AWS AppSync subscribers of external database updates that aren't performed by client-side mutations?(video)",
- "link": "https://www.youtube.com/watch?v=KrmFAcucjzQ"
- },
- {
- "text": "Simplify out of band AWS AppSync real-time subscriptions with Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/mobile/appsync-eventbridge/"
- },
- {
- "text": "Using multiple authorization types with AWS AppSync GraphQL APIs",
- "link": "https://aws.amazon.com/blogs/mobile/using-multiple-authorization-types-with-aws-appsync-graphql-apis/"
- },
- {
- "text": "Amazon Cognito to Amazon API Gateway HTTP APIs (JWT)",
- "link": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-httpapi"
- },
- {
- "text": "Create an AWS AppSync API using SAM - SnappyFeatures #3",
- "link": "https://www.youtube.com/watch?v=J0qfMYRmQcc"
- },
- {
- "text": "AWS Well-Architected Framework/Performance Efficiency Pillar/Serverless Event Submission with Status Updates/Asynchronous updates via WebSockets with AWS AppSync and GraphQL",
- "link": "https://docs.aws.amazon.com/wellarchitected/latest/serverless-applications-lens/serverless-event-submission-with-status-updates.html"
- },
- {
- "text": "Filtering GraphQL Subscriptions with Arguments with AWS Amplify & AWS AppSync",
- "link": "https://www.youtube.com/watch?v=CeeoFqE2OU0&t=335s"
- }
- ]
- },
- "author": {
- "headline": "Presented by Andrii Sorochan, Developer",
- "name": "Andrii Sorochan",
- "imageURL": "https://avatars.githubusercontent.com/u/14042193?s=400&u=2235702adbb77bb75e67ecbc850a17863eca3687&v=4",
- "twitter": "s_andriy_",
- "bio": "Andrii is Developer from Ukraine"
- }
-}
diff --git a/appsync-stepfunctions-express-sam/example-pattern.json b/appsync-stepfunctions-express-sam/example-pattern.json
deleted file mode 100644
index eab6ee78c..000000000
--- a/appsync-stepfunctions-express-sam/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "AWS AppSync to AWS Step Functions (sync express workflow)",
- "description": "Create AppSync API to trigger a syncrounuous SFN execution",
- "language": "YAML",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains a sample AWS SAM template for running synchronous express workflows for Step Functions from an AppSync API.",
- "The State Machine will be added as an HTTP data source to AppSync API."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/appsync-stepfunctions-express-sam",
- "templateURL": "serverless-patterns/appsync-stepfunctions-express-sam",
- "projectFolder": "appsync-stepfunctions-express-sam",
- "templateFile": "appsync-stepfunctions-express-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Invoke AWS services directly from AWS AppSync",
- "link": "https://aws.amazon.com/blogs/mobile/invoke-aws-services-directly-from-aws-appsync/"
- },
- {
- "text": "AWS Appsync",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "AWS Step Functions",
- "link": "https://aws.amazon.com/step-functions/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alexis Philippart de Foy",
- "image": "https://media.licdn.com/dms/image/C4D03AQFyN5GLrFk-0g/profile-displayphoto-shrink_800_800/0/1586853008031?e=1693440000&v=beta&t=0BtjX92oZxhHUrrIzh55wah8V1OiwOAOyigPtfAcZdo",
- "bio": " I am a Startup Solutions Architect, Serverless enthusiast and former Startup Founder.",
- "linkedin": "apdf",
- "twitter": "@aphilippartd"
- }
- ]
-}
diff --git a/cdk-api-gateway-cors-whitelist/example-pattern.json b/cdk-api-gateway-cors-whitelist/example-pattern.json
deleted file mode 100644
index 9b35bc415..000000000
--- a/cdk-api-gateway-cors-whitelist/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "API Gateway CORS Domain Whitelist",
- "description": "Create a whitelist of domains that can be validated when CORS Pre-flight requests are made via a Proxy Integration and Lambda.",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "By instrumenting CORS, a browser's request will be validated against an OPTIONS request inside of API Gateway. API Gateway only allows a single domain to be registered or a `*` can be utilized to allow all domains. In the case of more restriction and more flexibility, a whitelist of allowed domains can be built using a Lambda that is executed via a Proxy Integration."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-kinesis-poison-pill",
- "templateURL": "serverless-patterns/cdk-api-gateway-cors-whitelist",
- "projectFolder": "cdk-api-gateway-cors-whitelist",
- "templateFile": "infra/lib/main-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS API Gateway",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html"
- },
- {
- "text": "AWS API Gateway CORS",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html"
- },
- {
- "text": "Go Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/golang-handler.html"
- }
- ]
- },
- "deploy": {
- "text": ["make build-and-deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["make teardown"]
- },
- "authors": [
- {
- "headline": "Presented by Benjamen Pyle",
- "name": "Benjamen Pyle",
- "image": "https://www.binaryheap.com/wp-content/uploads/2023/02/cropped-Photo-on-1-26-23-at-8.57-AM-2.png",
- "bio": "Benjamen Pyle is an AWS Community Builder who loves building scalable and useful applications with Serverless and Event Driven Architectures",
- "linkedin": "benjamenpyle",
- "twitter": "benjamenpyle"
- }
- ]
-}
diff --git a/cdk-apigw-authorizer-sqs/example-pattern.json b/cdk-apigw-authorizer-sqs/example-pattern.json
deleted file mode 100644
index c0a417dc4..000000000
--- a/cdk-apigw-authorizer-sqs/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "API Gateway REST API protected with Authorizer to SQS",
- "description": "Create an API Gateway REST API that is protected with a Lambda token authorizer and integrates with AmazonSQS",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK project demonstrates how to set up a queue based leveling pattern using AWS API Gateway REST API and SQS.",
- "Processing higher number of HTTP and webhook events synchronously during traffic peaks can cause performance deteroration." ,
- "To avoid these situations, a common architectural strategy is to use a queue that acts as a buffer for these synchronous requests.",
- "This CDK project deploys an API Gateway REST API that can act as a front door for requests and stores them in an Amazon SQS queue.",
- "Furthermore, if you want to to protect your API Gateway with a custom authorizer the project also has a stack to takes a Lambda ARN which implements authorization logic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns.git",
- "templateURL": "serverless-patterns/cdk-apigw-authorizer-sqs",
- "projectFolder": "cdk-apigw-authorizer-sqs",
- "templateFile": "apigw_sqs/apigw_sqs_auth_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Solutions Construct for aws-apigateway-sqs",
- "link": "https://docs.aws.amazon.com/solutions/latest/constructs/aws-apigateway-sqs.html"
- },
- {
- "text": "AWS APIGateway lambda authorizer blueprint",
- "link": "https://github.com/awslabs/aws-apigateway-lambda-authorizer-blueprints/blob/master/blueprints/python/api-gateway-authorizer-python.py"
- }
- ]
- },
- "deploy": {
- "text": [
- "CDK deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Sai Kotagiri",
- "image": "link-to-your-photo.jpg",
- "bio": "Sai Kotagiri is a Partner Solutions Architect at Amazon Web Services based in New York metropolitan area. Sai has over 20 years of experience focusing on digital transformation and IT strategy",
- "linkedin": "https://www.linkedin.com/in/sai-diwakar-kotagiri-1251928/"
- }
- ]
-}
diff --git a/cdk-appsync-sns/example-pattern.json b/cdk-appsync-sns/example-pattern.json
deleted file mode 100644
index ddc99e8af..000000000
--- a/cdk-appsync-sns/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "AppSync to SNS",
- "description": "Create an AppSync API with an SNS HTTP data source",
- "language": "TypeScript",
- "level": "100",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application deploys an AppSync API which uses an SNS HTTP datasource. AWS AppSync provides a 'publish' query that sends a message to the configured SNS topic. The query returns the response MessageId, and the SequenceNumber if using a FIFO (first-in-first-out) topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-appsync-sns",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/cdk-appsync-sns/cdk/lib/main.ts",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-appsync-sns/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Simplify access to multiple microservices with AWS AppSync and AWS Amplify",
- "link": "https://aws.amazon.com/blogs/mobile/appsync-microservices/"
- },
- {
- "text": "Tutorial: HTTP Resolvers",
- "link": "https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-http-resolvers.html"
- }
- ]
- },
- "deploy": {
- "text": ["npx aws-cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: npx aws-cdk destroy
."]
- },
- "authors": [
- {
- "name": "Michael Liendo",
- "image": "https://pbs.twimg.com/profile_images/1610321865213444096/OttGok0S_400x400.jpg",
- "bio": "Senior Developer Advocate | AWS AppSync 🦦",
- "linkedin": "focusotter",
- "twitter": "focusotter"
- }
- ]
-}
diff --git a/cdk-cognito-apigateway-lambda/example-pattern.json b/cdk-cognito-apigateway-lambda/example-pattern.json
deleted file mode 100644
index 9a75a44e0..000000000
--- a/cdk-cognito-apigateway-lambda/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "API authentication using Cognito User Pool client credentials flow",
- "description": "This pattern guides you to authenticate service calls using Cognito User Pool. Often, we come across scenarios where microservices need to communicate with each other in a secure manner using an established standard like OAuth2. The Cognito client_credentials grant type helps you create application client with a set of client credentials that can be used to generate access token. This token can be used to access APIs hosted on API Gateway secured by an authorizer that uses the Cognito User Pool.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The sample project demonstrates how to use a Cognito User Pool as an Authorizer for an API hosted on API Gateway. The API is invoked using using an access token that is generated using the user pool app client credentials. If the token is valid, the returns a 200 response. For any invalid tokens, the API response with 401 error."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-cognito-apigateway-lambda",
- "templateURL": "serverless-patterns/cdk-cognito-apigateway-lambda",
- "projectFolder": "cdk-cognito-apigateway-lambda",
- "templateFile": "cdk-cognito-apigateway-lambda/lib/cdk-cognito-apigateway-lambda.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Generate access token",
- "link": "https://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "name": "Suhasini Krishnan Udayar",
- "image": "https://github.com/suhasini-udayar.png",
- "bio": "Cloud Application Architect",
- "linkedin": "https://www.linkedin.com/in/suhasini-udayar-54532a104/"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/cdk-eventbridge-mesh/example-pattern.json b/cdk-eventbridge-mesh/example-pattern.json
deleted file mode 100644
index 26668d5dd..000000000
--- a/cdk-eventbridge-mesh/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Meshing together EventBridge Custom Buses",
- "description": "Meshing together EventBuses with EventBridge Rules and Event Patterns gives the features isolation and autonomy which drives producer and consumer clarity. This pattern looks to demonstrate that using CDK and TypeScript.",
- "language": "Go",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "By connecting two or more EventBuses together forming a mesh, the rules associated with the consumers and producers can be more isolated and closer to the features that are producing and consuming those messages. This layer of isolation gives a feature/service the ability to work more autonomously and reduces the risk of rules overlapping or permissions being too liberal."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-eventbridge-mesh",
- "templateURL": "serverless-patterns/cdk-eventbridge-mesh",
- "projectFolder": "cdk-eventbridge-mesh",
- "templateFile": "lib/main-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge CDK Documentation",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_events-readme.html"
- },
- {
- "text": "AWS EventBridge Custom Bus",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-event-bus.html"
- }
- ]
- },
- "deploy": {
- "text": ["make deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["make destroy"]
- },
- "authors": [
- {
- "headline": "Presented by Benjamen Pyle",
- "name": "Benjamen Pyle",
- "image": "https://www.binaryheap.com/wp-content/uploads/2023/02/cropped-Photo-on-1-26-23-at-8.57-AM-2.png",
- "bio": "Benjamen Pyle is an AWS Community Builder who loves building scalable and useful applications with Serverless and Event Driven Architectures",
- "linkedin": "benjamenpyle",
- "twitter": "benjamenpyle"
- }
- ]
-}
diff --git a/cdk-eventbridge-stepfunction-sqs/example-pattern.json b/cdk-eventbridge-stepfunction-sqs/example-pattern.json
deleted file mode 100644
index 09cf629a6..000000000
--- a/cdk-eventbridge-stepfunction-sqs/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "EventBridge to Step Functions and failure events to SQS",
- "description": "Create a Step Functions workflow to Send Failure event to SQS for operational needs.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use an AWS Step Functions state machine to send failure event to SQS.",
- "This pattern is leveraging the native integration between the Amazon EventBridge to AWS Step Function to AWS SQS services. There are two types of event sample payloads available in the code repository. For the success event, the Amazon EventBridge rule invokes the AWS Step Functions and executes the lambda function, and completes the state machine successfully. For the failure event , the Amazon EventBridge rule invokes the AWS Step Functions and executes the lambda function, which throws a custom exception and gets retried 2 times using the AWS Step Functions error handler. After the retry is exhausted, the Catch handler moves the state machine failure to AWS SQS. Step function writes failure message to the AWS SQS using native 'SendMessage' task which can be handled for operational needs.",
- "This pattern deploys one AWS Step Functions, two AWS SQS queues, one custom EventBus, and one lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-eventbridge-stepfunction-sqs",
- "templateURL": "serverless-patterns/cdk-eventbridge-stepfunction-sqs",
- "projectFolder": "cdk-eventbridge-stepfunction-sqs",
- "templateFile": "lib/eventbridge-stepfunction-sqs-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "CDK Custom Resource",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.custom_resources.AwsCustomResource.html"
- },
- {
- "text": "Call Amazon SQS with Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-sqs.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Shankar Srinivasan",
- "bio": "I am a Cloud Application Architect at AWS. I specialize in architecting and developing serverless, event-driven solutions on AWS.",
- "linkedin": "https://www.linkedin.com/in/shankar-srinivasan-3863a110"
- }
- ]
-}
diff --git a/cdk-kinesis-poison-pill/example-pattern.json b/cdk-kinesis-poison-pill/example-pattern.json
deleted file mode 100644
index b658fbdc9..000000000
--- a/cdk-kinesis-poison-pill/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Handling a Kinesis Data Stream Poison Pill with a Lambda Consumer",
- "description": "Handling failure when consuming a Kinesis Data Stream can keep your iterator healthy and allow your consumer to retry attempts that are likely to recover or abandon messages that are inherentl bad",
- "language": "Go",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to handle a Lambda consumer failure when reading from a Kinesis Data Stream with CDK. Without proper handling of failure when working with Kinesis Data Streams, an iterator will get stuck and the only way for the data to clear the stream is for it to **Age Out** beyond the trim horizon. By leveraging OnFailure triggers when using CDK's KinesisEventSource, Lambda consumers will be more resiliant, less wasteful and allow downstreawm consumers to get events in the most timely manner possible."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-kinesis-poison-pill",
- "templateURL": "serverless-patterns/cdk-kinesis-poison-pill",
- "projectFolder": "cdk-kinesis-poison-pill",
- "templateFile": "lib/main-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Using Lambda with Kinesis",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html"
- },
- {
- "text": "AWS Lambda Failure-Handling Features",
- "link": "https://www.amazonaws.cn/en/new/2019/aws-lambda-supports-failure-handling-features-for-kinesis-and-dynamodb-event-sources/"
- }
- ]
- },
- "deploy": {
- "text": ["make deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["make destroy"]
- },
- "authors": [
- {
- "headline": "Presented by Benjamen Pyle",
- "name": "Benjamen Pyle",
- "image": "https://www.binaryheap.com/wp-content/uploads/2023/02/cropped-Photo-on-1-26-23-at-8.57-AM-2.png",
- "bio": "Benjamen Pyle is an AWS Community Builder who loves building scalable and useful applications with Serverless and Event Driven Architectures",
- "linkedin": "benjamenpyle",
- "twitter": "benjamenpyle"
- }
- ]
-}
diff --git a/cdk-s3-sqs-lambda-dynamodb/example-pattern.json b/cdk-s3-sqs-lambda-dynamodb/example-pattern.json
deleted file mode 100644
index c7aa9d6d7..000000000
--- a/cdk-s3-sqs-lambda-dynamodb/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Process files uploaded to S3 with SQS, Lambda and DynamoDB",
- "description": "Creates a serverless pattern to store and process csv data using Amazon S3, Amazon SQS, AWS Lambda and Amazon DynamoDB services",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This AWS CDK template deploys an S3 bucket, SQS queue, Lambda function and DynamoDB table.",
- "The SQS queue is configured to listen to S3 create object events",
- "Lambda function is configured to read messages from the SQS queues, process them and insert records into DynamoDB table named EmployeeInfo."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-s3-sqs-lambda-dynamodb",
- "templateURL": "serverless-patterns/cdk-s3-sqs-lambda-dynamodb",
- "projectFolder": "cdk-s3-sqs-lambda-dynamodb",
- "templateFile": "cdk-s3-sqs-lambda-dynamodb/lib/my-cdk-project-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "S3 event notification types and detinations",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/notification-how-to-event-types-and-destinations.html"
- },
- {
- "text": "Configuring SQS queue to use with Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-queueconfig"
- }
- ]
- },
- "deploy": {
- "text": [
- "Create Stack: cdk deploy
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Shashi Shankar",
- "image": "./assets/shankey28.jpg",
- "bio": "Shashi Shankar is a Sr Cloud Architect at PwC Advisory services",
- "linkedin": "https://www.linkedin.com/in/shashi-shankar-3a61a0a/"
- }
- ]
-}
diff --git a/cdk-sfn-s3/example-pattern.json b/cdk-sfn-s3/example-pattern.json
deleted file mode 100644
index 55837f5f1..000000000
--- a/cdk-sfn-s3/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Step Functions to S3 in CDK",
- "description": "Create a Step Functions workflow that puts the object to an S3 bucket.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates a Step Functions workflow that publishes a file to an S3 bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-sfn-s3",
- "templateURL": "serverless-patterns/cdk-sfn-s3",
- "projectFolder": "cdk-sfn-s3",
- "templateFile": "lib/cdk-sfn-s3-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Synchronous Express Workflows for AWS Step Functions",
- "link": "https://aws.amazon.com/blogs/compute/new-synchronous-express-workflows-for-aws-step-functions/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Harshitha Shashidhar",
- "image": "../assets/images/resources/harshihs.jpg",
- "bio": "Harshitha Shashidhar is an Cloud Application architect who loves to build the serverless applications at scale."
- }
- ]
-}
diff --git a/cdk-sns-sqs-eventbridge-pipes-stepfunctions/example-pattern.json b/cdk-sns-sqs-eventbridge-pipes-stepfunctions/example-pattern.json
deleted file mode 100644
index 56c0c8ae0..000000000
--- a/cdk-sns-sqs-eventbridge-pipes-stepfunctions/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "SNS to Step Functions with an EventBridge Pipe and Bus via CDK",
- "description": "Creates a Step Function Wofklow that is triggered by a producer that is generating messages in SNS. The messages are filtered via EventBridge Pipes and the Step Function is Triggered by a Custom EventBus and Rule",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern is designed to help connect producers that are submitting messages into SNS with EventBridge as a way to deliver those same events in a more configuration driven and scalable way. It also helps reduce load and needless code downstream by leveraging AWS EventBridge Pipes to both filter and transform the data from the producer before attaching to an EventBus for further consumption."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-sns-sqs-eventbridge-pipes-stepfunctions",
- "templateURL": "serverless-patterns/cdk-sns-sqs-eventbridge-pipes-stepfunctions",
- "projectFolder": "cdk-sns-sqs-eventbridge-pipes-stepfunctions",
- "templateFile": "lib/main-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS EventBridge Pipes",
- "link": "https://aws.amazon.com/eventbridge/pipes/"
- },
- {
- "text": "AWS EventBridge Pipes SQS Source",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "headline": "Presented by Benjamen Pyle",
- "name": "Benjamen Pyle",
- "image": "https://www.binaryheap.com/wp-content/uploads/2023/02/cropped-Photo-on-1-26-23-at-8.57-AM-2.png",
- "bio": "Benjamen Pyle is an AWS Community Builder who loves building scalable and useful applications with Serverless and Event Drive Architectures",
- "linkedin": "benjamenpyle",
- "twitter": "benjamenpyle"
- }
- ]
-}
diff --git a/cdk-sns-sqs-lambda-dynamodb-dotnet/example-pattern.json b/cdk-sns-sqs-lambda-dynamodb-dotnet/example-pattern.json
deleted file mode 100644
index 712dc418e..000000000
--- a/cdk-sns-sqs-lambda-dynamodb-dotnet/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Serverless Data Enrichment Pipeline with Persistence",
- "description": "This pattern helps you deploy a CDK stack with SNS, SQS, Lambda and DynamoDB. The pattern uses these AWS services to create a serverless data enrichment pipeline with persistence of data in SQS. The Lambda functions are used to consume data from SQS queues, perform enrichment, update DynamoDB table. The enriched data is further sent to another SQS queue.",
- "language": ".NET",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Data Pipeline Stack #1, relay the raw message from SNS to DynamoDB.",
- "Data Pipeline Stack #2, relay the enrich message from SNS and route it to DynamoDB & SQS."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cdk-sns-sqs-lambda-dynamodb-dotnet",
- "templateURL": "serverless-patterns/cdk-sns-sqs-lambda-dynamodb-dotnet",
- "projectFolder": "cdk-sns-sqs-lambda-dynamodb-dotnet",
- "templateFile": "/cdk-sns-sqs-lambda-dynamodb-dotnet/src/Datapipeline/"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "SNS >> SQS >> Lambda >> DynamoDB >> SQS"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "authors": [
- {
- "name": "Sakthivel Chellapparimanam",
- "image": "",
- "bio": "AWS - Cloud Application Architect",
- "linkedin": "https://www.linkedin.com/in/srcsakthivel",
- "twitter": "@srcsakthivel"
- }
- ]
-}
diff --git a/claim-check-pattern-cdk/example-pattern.json b/claim-check-pattern-cdk/example-pattern.json
deleted file mode 100644
index aaccc126f..000000000
--- a/claim-check-pattern-cdk/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Implementing the claim check pattern using EventBridge Pipes.",
- "description": "To reduce the size of the events in your event-driven application, you can temporarily remove attributes. This approach is known as the claim check pattern.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "You split a message into a reference (“claim check”) and the associated payload. Then, you store the payload in external storage and add only the claim check to events. When you process events, you retrieve relevant parts of the payload using the claim check. For example, you can retrieve a user's name and birthday based on their userID.",
- "The claim check pattern has two parts. First, when an event is received, you split it and store the payload elsewhere. Second, when the event is processed, you retrieve the relevant information. You can implement both aspects with a pipe.",
- "In the first pipe, you use the enrichment to split the event, in the second to retrieve the payload. In this example Lambda is used to store the data in DynamoDB.",
- "Using a pipe to split and retrieve messages has three advantages. First, you keep events concise as they move through the system. Second, you ensure that the event contains all relevant information when it is processed. Third, you encapsulate the complexity of splitting and retrieving within the pipe."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/claim-check-pattern-cdk",
- "templateURL": "serverless-patterns/claim-check-pattern-cdk",
- "projectFolder": "claim-check-pattern-cdk",
- "templateFile": "src/lib/claim-check-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "More Enterprise Integration Patterns on AWS Samples",
- "link": "https://github.com/aws-samples/amazon-eventbridge-pipes-architectural-patterns"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Dominik Richter",
- "image": "https://avatars.githubusercontent.com/u/29404931",
- "bio": "Solutions Architect at AWS, passionate about event-driven architectures and Serverless.",
- "linkedin": "do-richter"
- }
- ]
-}
diff --git a/cloudfront-apigw-http-api-lambda-rust/example-pattern.json b/cloudfront-apigw-http-api-lambda-rust/example-pattern.json
deleted file mode 100644
index 092dbbb35..000000000
--- a/cloudfront-apigw-http-api-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon Cloudfront distribution on front of an Amazon API Gateway HTTP API to AWS Lambda",
- "description": "This pattern creates an Amazon Cloudfront distribution on front of an Amazon API Gateway HTTP API and an AWS Lambda function.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon Cloudfront distribution, an Amazon API Gateway HTTP API with a default route and basic CORS configuration. The default route is integrated with an AWS Lambda function written in Rust. The function logs the incoming API event (v2) and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-apigw-http-api-lambda-rust",
- "templateURL": "serverless-patterns/cloudfront-apigw-http-api-lambda-rust",
- "projectFolder": "cloudfront-apigw-http-api-lambda-rust",
- "templateFile": "cloudfront-apigw-http-api-lambda-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway",
- "link": "https://aws.amazon.com/api-gateway/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/cloudfront-apigw-rest-api-lambda-dynamodb-sam/example-pattern.json b/cloudfront-apigw-rest-api-lambda-dynamodb-sam/example-pattern.json
deleted file mode 100644
index 59cebfc79..000000000
--- a/cloudfront-apigw-rest-api-lambda-dynamodb-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon Cloudfront distribution in front of Amazon S3 and an Amazon API Gateway REST API to AWS Lambda to Amazon DynamoDB",
- "description": "This pattern creates an Amazon Cloudfront distribution in front of Amazon S3 and an Amazon API Gateway REST API which invokes an AWS Lambda function to store data in an Amazon DynamoDB table.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project creates a simple webform application using Amazon Cloudfront in front of Amazon S3 and Amazon API Gateway REST API. The Amazon API Gateway REST API invokes an AWS Lambda function which stores the webform data in an Amazon DynamoDB table.",
- "This pattern uses AWS WAF to secure the CloudFront distribution and AWS Secrets Manager to store a validation string to validate API requests flow through Amazon Cloudfront. AWS X-Ray is also enabled to allow for distributed tracing."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-apigw-rest-api-lambda-dynamodb-sam",
- "templateURL": "serverless-patterns/cloudfront-apigw-rest-api-lambda-dynamodb-sam",
- "projectFolder": "cloudfront-apigw-rest-api-lambda-dynamodb-sam",
- "templateFile": "cloudfront-apigw-rest-api-lambda-dynamodb-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway Developer Guide",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-rest-api.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy",
- "sh deploy_frontend.sh"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "John Dwyer",
- "image": "https://avatars.githubusercontent.com/u/130080657?v=4",
- "bio": "I am a WWPS Solutions Architect with AWS. I help customers build and architect serverless applications at scale.",
- "linkedin": "jrd326"
- }
- ]
-}
diff --git a/cloudfront-cff-s3-staticsite-dotnet/example-pattern.json b/cloudfront-cff-s3-staticsite-dotnet/example-pattern.json
deleted file mode 100644
index bab321a6d..000000000
--- a/cloudfront-cff-s3-staticsite-dotnet/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "CloudFront to S3 - Static Website",
- "description": "Creates CloudFront Distributions to server the static site from S3.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how can you deploy a MKDOCS site to S3 with Cloud Front.",
- "The CloudFront execute a function when recieves a request from viewer and append index.html to each request for proper routing",
- "In S3 we host the html files generated from the MKDOCS"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-cff-s3-staticsite-dotnet",
- "templateURL": "serverless-patterns/cloudfront-cff-s3-staticsite-dotnet",
- "projectFolder": "cloudfront-cff-s3-staticsite-dotnet",
- "templateFile": "cloudfront-cff-s3-staticsite-dotnet/MdsiteStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "CloudFront",
- "link": "https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html"
- },
- {
- "text": "Simple Storage Service - S3",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed cleanup instructions."
- ]
- },
- "authors": [
- {
- "name": "Sakthivel Chellapparimanam",
- "image": "",
- "bio": "AWS - Cloud Application Architect",
- "linkedin": "https://www.linkedin.com/in/srcsakthivel",
- "twitter": "@srcsakthivel"
- }
- ]
-}
\ No newline at end of file
diff --git a/cloudfront-failover-apigw-http-api-lambda-rust/example-pattern.json b/cloudfront-failover-apigw-http-api-lambda-rust/example-pattern.json
deleted file mode 100644
index 9ba527d0e..000000000
--- a/cloudfront-failover-apigw-http-api-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon Cloudfront distribution on front of an Amazon API Gateway HTTP API to AWS Lambda",
- "description": "This pattern creates an Amazon Cloudfront failover distribution on front of an Amazon API Gateway HTTP API and an AWS Lambda function in two different regions.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon Cloudfront distribution on front of two Amazon API Gateway HTTP API with a default route and basic CORS configuration in different regions. The default route is integrated with an AWS Lambda function written in Rust. The function logs the incoming API event (v2) and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-failover-apigw-http-api-lambda-rust",
- "templateURL": "serverless-patterns/cloudfront-failover-apigw-http-api-lambda-rust",
- "projectFolder": "cloudfront-failover-apigw-http-api-lambda-rust",
- "templateFile": "cloudfront-failover-apigw-http-api-lambda-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon API Gateway",
- "link": "https://aws.amazon.com/api-gateway/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/cloudfront-lambda-url-java/example-pattern.json b/cloudfront-lambda-url-java/example-pattern.json
deleted file mode 100644
index df4e74bb3..000000000
--- a/cloudfront-lambda-url-java/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon CloudFront to AWS Lambda URLs",
- "description": "Front AWS Lamda Function URLs with Amazon CloudFront",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "An Amazon CloudFront distribution is created that forwards requests to the domain name of the deployed AWS Lambda function URL.",
- "Amazon CloudFront also allows for custom domain names, AWS Web Application Firewall (WAF) and AWS Shield Advanced to protect your endpoint from attacks."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-lambda-url-java",
- "templateURL": "serverless-patterns/cloudfront-lambda-url-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using Amazon CloudFront with AWS Lambda as origin to accelerate your web applications",
- "link": "https://aws.amazon.com/blogs/networking-and-content-delivery/using-amazon-cloudfront-with-aws-lambda-as-origin-to-accelerate-your-web-applications/"
- },
- {
- "text": "Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
."
- ]
- },
- "authors": [
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/cloudfront-lambda-url-rust/example-pattern.json b/cloudfront-lambda-url-rust/example-pattern.json
deleted file mode 100644
index d9c27887e..000000000
--- a/cloudfront-lambda-url-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon CloudFront to AWS Lambda URLs",
- "description": "This pattern creates an Amazon CloudFront distribution on front of an AWS Lambda function URL.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon Cloudfront distribution, an AWS Lambda function URL. The function logs the incoming event and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-lambda-url-rust",
- "templateURL": "serverless-patterns/cloudfront-lambda-url-rust",
- "projectFolder": "cloudfront-lambda-url-rust",
- "templateFile": "cloudfront-lambda-url-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/cloudfront-le-apigw-cdk/example-pattern.json b/cloudfront-le-apigw-cdk/example-pattern.json
deleted file mode 100644
index 26984339d..000000000
--- a/cloudfront-le-apigw-cdk/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Secure AWS Api Gateway Requests with Signature Version 4 by using Lambda@Edge",
- "description": "This pattern demonstrates how to secure an API by blocking any direct access and allowing only the access through the CloudFront distribution deployed in front of the API.",
- "language": "nodejs",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "* When accessing the CloudFront distribution domain name the Lambda@Edge is triggered and signs the request with AWS Signature Version 4.",
- "* The HTTP API is secured by using IAM authorization.",
- "* The role attached to the Lambda@Edge has the permission to invoke the API, so by signing the request an unauthenticated user is able to get the response from the backend Lambda through the HTTP API.",
- "* This pattern demonstrates how to secure an HTTP API but with small changes in Lambda@Edge it can be adapted to secure other AWS services.",
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-le-apigw-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-le-apigw-cdk/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Serving SSE-KMS encrypted content from S3 using CloudFront",
- "link": "https://aws.amazon.com/blogs/networking-and-content-delivery/serving-sse-kms-encrypted-content-from-s3-using-cloudfront/"
- },
- {
- "text": "How to Use Lambda@Edge and JSON Web Tokens to Enhance Web Application Security",
- "link": "https://aws.amazon.com/blogs/networking-and-content-delivery/authorizationedge-how-to-use-lambdaedge-and-json-web-tokens-to-enhance-web-application-security/"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Corneliu Croitoru, Prototyping Architect",
- "name": "Corneliu Croitoru",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-corneliu-croitoru.jpg",
- "bio": "Developer at heart, in 2018 joined AWS as a Solution Architect and since 2021 building, jointly with customers, the most exciting and innovative prototypes on AWS.",
- "linkedin": "corneliucroitoru",
- "twitter": "@cornel_croi"
- }
- ]
- }
\ No newline at end of file
diff --git a/cloudfront-s3-cdk-dotnet/example-pattern.json b/cloudfront-s3-cdk-dotnet/example-pattern.json
deleted file mode 100644
index f6c4758ad..000000000
--- a/cloudfront-s3-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "AWS CloudFront to Amazon S3",
- "description": "Serving private content from CloudFront with signed URLs and signed cookies",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to use CloudFront to securely serve private content.",
- "In this pattern, the CDK stack creates an S3 bucket and a CloudFront distribution that is configured to accept requests with only valid signed URLs or signed Cookies."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-s3-cdk-dotnet",
- "projectFolder": "cloudfront-s3-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-s3-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/cloudfront-s3-cdk-dotnet",
- "templateFile": "src/cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ankush Jain",
- "image": "https://avatars.githubusercontent.com/u/13661966?v=4",
- "bio": "Application Development Consultant at AWS Professional Services.",
- "linkedin": "ankush-jain-developer",
- "twitter": "ankushjain358"
- }
- ]
-}
\ No newline at end of file
diff --git a/cloudfront-waf-s3-cdk/example-pattern.json b/cloudfront-waf-s3-cdk/example-pattern.json
deleted file mode 100644
index 5b6602da3..000000000
--- a/cloudfront-waf-s3-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon CloudFront to AWS WAF to Amazon S3 using .Net CDK",
- "description": "Creates CloudFront, WAF Web ACL, and S3 bucket for UI code. Then WAF Web ACL gets applied to CloudFront distribution to restrict Website access based on source IP address.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When user access the CloudFront distribution URL, user source IP address will get inspected by WAF Web ACL.",
- "If source IP address is in the IP set used by Web ACL then user will see the Html page which is served from S3 bucket.",
- "If source IP address is not in the IP set then user will get 403 http status code."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudfront-waf-s3-cdk",
- "templateURL": "serverless-patterns/cloudfront-waf-s3-cdk",
- "projectFolder": "cloudfront-waf-s3-cdk",
- "templateFile": "cloudfront-waf-s3-cdk/src/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Call Athena with Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-athena.html"
- },
- {
- "text": "Amazon Athena - Serverless Interactive Query Service",
- "link": "https://aws.amazon.com/athena/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy CloudFrontS3WafStack"
- ]
- },
- "testing": {
- "text": [
- "Get the CloudFrontURL from CloudFormation output",
- "Access the Url to confirm you can see the message - \"Hello S3 static WebSite\"",
- "Use 'WAF & Shield' -> 'Ip Set' service on AWS console to remove your local machine IP address and access the CloudFrontURL again to confirm 403 http status code"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy CloudFrontS3WafStack",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'CloudFrontS3WafStack')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Vikramsinha Patil",
- "image": "",
- "bio": "Cloud Application Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/vikramsinha-patil-834a4b2b",
- "twitter": ""
- }
- ]
-}
diff --git a/cloudmap-fargate-terraform/example-pattern.json b/cloudmap-fargate-terraform/example-pattern.json
deleted file mode 100644
index 4cde32d66..000000000
--- a/cloudmap-fargate-terraform/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Enabling Service Discovery for AWS Fargate",
- "description": "Provision Amazon Elastic Container Service (ECS) resources and deploy ECS service with integration of Cloud Map",
- "language": "YAML",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern provides sample Terraform IaC template to provision end to end Amazon Elastic Container Service (ECS) resources and deploy ECS service with integration of Cloud Map",
- "With Cloud Map, you can define custom names for your application resources, and it maintains the updated location of these dynamically changing resources"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudmap-fargate-terraform",
- "templateURL": "serverless-patterns/cloudmap-fargate-terraform",
- "projectFolder": "cloudmap-fargate-terraform",
- "templateFile": "cloudmap-fargate-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Service discovery considerations",
- "link": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-discovery.html#service-discovery-considerations"
- },
- {
- "text": "Configuring AWS Cloud Map",
- "link": "https://docs.aws.amazon.com/cloud-map/latest/dg/configuring-cloud-map.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply --auto-approve"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy --auto-approve"
- ]
- },
- "authors": [
- {
- "name": "Aditya Ranjan",
- "image": "https://avatars.githubusercontent.com/u/129155368?v=4",
- "bio": "Cloud Consultant at AWS ProServe",
- "linkedin": "https://www.linkedin.com/in/aditya-ranjan-21a30515a/"
- }
- ]
- }
\ No newline at end of file
diff --git a/cloudtrail-lambda-dynamo-cdk/example-pattern.json b/cloudtrail-lambda-dynamo-cdk/example-pattern.json
deleted file mode 100644
index b1e191d30..000000000
--- a/cloudtrail-lambda-dynamo-cdk/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Check Resource Tag Compliance Using CloudTrail, Lambda and Dynamo",
- "description": "Creates a CloudTrail trail for resource creation, and checks for the required tags to determine complaince",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to use CloudTrail events to check the tags of resources that have been created. The relevant resources are stored in a DynamoDB table",
- "which then gets sent to Lambda to check if the required tags are present. Compliance is updated on the DynamoDB table in the is_compliant (true/false).",
- "Further actions can be taken based on the results of the compliance check at the user's discretion."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-athena-cdk-python",
- "templateURL": "serverless-patterns/sfn-athena-cdk-python",
- "projectFolder": "sfn-athena-cdk-python",
- "templateFile": "sfn_athena_cdk_python/sfn_athena_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Attribute-based Access Control (ABAC)",
- "link": "https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
"
- ]
- },
- "authors": [
- {
- "name": "Mia Alarcon Chong",
- "image": "",
- "bio": "AWS Cloud Application Developer",
- "linkedin": "mialarcon"
- }
- ]
-}
diff --git a/cloudtrail-lambda-slack-sam/example-pattern.json b/cloudtrail-lambda-slack-sam/example-pattern.json
deleted file mode 100644
index 2cc596d1a..000000000
--- a/cloudtrail-lambda-slack-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "AWS Lambda to Cloudtrail data events pattern using SAM",
- "description": "This pattern demonstrates use of Cloudtrail lambda data events for monitoring invocations via Slack notifications ",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Cloudtrail which pushes AWS Lambda function data events to Cloudwatch ",
- "The Cloudwatch has a lambda subscription filter to fetch only particular invocation events.",
- "The pattern deploys a lambda function which parses and forwards the Cloudwatch event over Slack notification"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudtrail-lambda-slack-sam",
- "templateURL": "serverless-patterns/cloudtrail-lambda-slack-sam",
- "projectFolder": "cloudtrail-lambda-slack-sam",
- "templateFile": "cloudtrail-lambda-slack-sam/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: Configure a CloudWatch subscription filter to invoke Lambda ",
- "link": "https://repost.aws/knowledge-center/lambda-cloudwatch-filter"
- },
- {
- "text": "Using AWS Cloudtrail for data events",
- "link": "https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Abhishek Agawane",
- "image": "https://drive.google.com/file/d/1E-5koDaKEaMUtOctX32I9TLwfh3kgpAq/view?usp=drivesdk",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS who loves cloud computing",
- "linkedin": "https://www.linkedin.com/in/agawabhi/"
- }
- ]
-}
diff --git a/cloudtrail-streaming-to-opensearch-serverless-cdk/example-pattern.json b/cloudtrail-streaming-to-opensearch-serverless-cdk/example-pattern.json
deleted file mode 100644
index 87a820965..000000000
--- a/cloudtrail-streaming-to-opensearch-serverless-cdk/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Amazon CloudTrail to AWS Lambda to Amazon OpenSearch",
- "description": "Create an OpenSearch cluster in VPC that receives CloudTrail CloudWatch logs from Lambda.",
- "language": "python",
- "architectureURL": "docs/architecture.png",
- "videoId": "",
- "level": "200",
- "framework": "CDK",
- "services": {
- "from": "cloudtrail",
- "to": "opensearch"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains a sample AWS CDK template to create Amazon CloudTrail, a CloudWatch Logs Group, AWS Lambda function and Amazon OpenSearch Serverless Collection",
- "The EventBridge Rule publishes matched events to CloudWatch Logs from CloudTrail.",
- "Lambda function indexes those logs to Amazon OpenSearch which can be further viewed from Amazon OpenSearch Dashboard."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudtrail-streaming-to-opensearch-serverless-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudtrail-streaming-to-opensearch-serverless-cdk/README.md",
- "projectFolder": "cloudtrail-streaming-to-opensearch-serverless-cdk",
- "templateFile": "stacks/opensearch_serverless_stack.py"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Ingesting data into Amazon OpenSearch Serverless collections",
- "link": "https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-clients.html"
- },
- {
- "text": "Fine-grained access control in Amazon OpenSearch Service",
- "link": "https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "author": {
- "headline": "Presented by Rupesh Tiwari, AWS Senior Solution Architect",
- "name": "Rupesh Tiwari",
- "image": "https://avatars.githubusercontent.com/u/330383?v=4",
- "bio": "Senior Solutions Architect at AWS Global Financial Services.",
- "linkedin": "in/rupesh-tiwari",
- "twitter": "rupeshtiwari"
- }
-}
diff --git a/cloudwatch-logs-subscription-firehose-cdk/example-pattern.json b/cloudwatch-logs-subscription-firehose-cdk/example-pattern.json
deleted file mode 100644
index 5e0d56f8a..000000000
--- a/cloudwatch-logs-subscription-firehose-cdk/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Cloudwatch Logs Subscription to Kinesis Firehose",
- "description": "Create a Cloudwatch Logs subscription to Kinesis Firehose to S3 bucket",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a log subscription in Cloudwath Logs with Kinesis Firehose as a log receiver.",
- "From Firehose, logs will be delivered to S3 bucket",
- "Using filter rules, we can control the logs that sends from Cloudwatch Logs to Kinesis Firehose."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudwatch-logs-subscription-firehose-cdk",
- "templateURL": "serverless-patterns/cloudwatch-logs-subscription-firehose-cdk",
- "projectFolder": "cloudwatch-logs-subscription-firehose-cdk",
- "templateFile": "cloudwatch-logs-subscription-firehose-cdk/cloudwatch-logs-subscription-firehose-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudwatch Log subscription",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html"
- },
- {
- "text": "Cloudwatch subscription filters for Kinesis Firehose",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html#FirehoseExample"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed cleanup instructions."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/cloudwatch-logs-subscription-lambda-cdk/example-pattern.json b/cloudwatch-logs-subscription-lambda-cdk/example-pattern.json
deleted file mode 100644
index 6459cf737..000000000
--- a/cloudwatch-logs-subscription-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Cloudwatch Logs Subscription to Lambda",
- "description": "Create a Cloudwatch Logs subscription to Lambda function",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a log subscription in Cloudwath Logs, Lambda as a log receiver.",
- "Using filter rules, we can control the logs that sends to Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudwatch-logs-subscription-lambda-cdk",
- "templateURL": "serverless-patterns/cloudwatch-logs-subscription-lambda-cdk",
- "projectFolder": "cloudwatch-logs-subscription-lambda-cdk",
- "templateFile": "cloudwatch-logs-subscription-lambda-cdk/cloudwatch-logs-subscription-lambda-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudwatch Log subscription",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html"
- },
- {
- "text": "Cloudwatch subscription filters for Lambda",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html#LambdaFunctionExample"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/cloudwatch-logs-subscription-lambda-sam/example-pattern.json b/cloudwatch-logs-subscription-lambda-sam/example-pattern.json
deleted file mode 100644
index c6c048cce..000000000
--- a/cloudwatch-logs-subscription-lambda-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Cloudwatch Logs Subscription to Lambda with SAM",
- "description": "Create a Cloudwatch Logs Subscription Filter to Lambda function with SAM",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Subscription Filter in Cloudwath Logs with Lambda as a log receiver.",
- "The AWS SAM template deploys the resources and the IAM permissions required to run the application."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudwatch-logs-subscription-lambda-sam",
- "templateURL": "serverless-patterns/cloudwatch-logs-subscription-lambda-sam",
- "projectFolder": "cloudwatch-logs-subscription-lambda-sam",
- "templateFile": "cloudwatch-logs-subscription-lambda-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudwatch Logs Subscription Filters",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Omar Rosadio",
- "image": "https://avatars.githubusercontent.com/u/10565035",
- "bio": "Cloud Engineer / AWS Community Builder in Serverless category.",
- "linkedin": "omaralonsorosadioportilla",
- "twitter": "@omarrosadio"
- }
- ]
-}
\ No newline at end of file
diff --git a/cloudwatch-logs-to-splunk-using-lambda-kinesis/example-pattern.json b/cloudwatch-logs-to-splunk-using-lambda-kinesis/example-pattern.json
deleted file mode 100644
index 0ae5f9041..000000000
--- a/cloudwatch-logs-to-splunk-using-lambda-kinesis/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Stream Amazon CloudWatch Logs to Splunk in Near Real-Time",
- "description": "This pattern sets up a serverless stack with AWS Lambda and Amazon Kinesis Data Stream (KDS) to continuously process streaming CloudWatch logs from different accounts and regions. Lambda receives stream records containing Amazon CloudWatch log events, decompresses and decodes them to prepare events for pushing to Splunk. A log destination Amazon Resource Name (ARN) needs to be configured across all account's CloudWatch log groups.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How It Works",
- "text": [
- "This pattern sets up a serverless stack with AWS Lambda and Amazon Kinesis Data Stream (KDS) to continuously process streaming CloudWatch logs from different accounts and regions.",
- "Lambda receives stream records containing Amazon CloudWatch log events, decompresses and decodes them to prepare events for pushing to Splunk.",
- "A log destination ARN needs to be configured across all account's CloudWatch log groups as a subscription filter for Amazon CloudWatch to start streaming logs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cloudwatch-logs-to-splunk-using-lambda-kinesis",
- "templateURL": "serverless-patterns/cloudwatch-logs-to-splunk-using-lambda-kinesis",
- "projectFolder": "cloudwatch-logs-to-splunk-using-lambda-kinesis",
- "templateFile": "cloudwatch-logs-to-splunk-using-lambda-kinesis/bin/kinesis-data-stream-log-processor.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Troubleshooting Common AWS CDK Issues",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/troubleshooting.html#troubleshooting_app_required"
- },
- {
- "text": "Splunk - About HTTP Event Collector Indexer Acknowledgment. Use this link to configure the HTTP event collector on the Splunk side",
- "link": "https://docs.splunk.com/Documentation/Splunk/9.0.4/Data/AboutHECIDXAck"
- },
- {
- "text": "How to Create a LogDestination Using the AWS Command Line Interface (CLI)",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CreateDestination.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "git clone https://github.com/aws-samples/serverless-patterns",
- "cd cloudwatch-logs-to-splunk-using-lambda-kinesis",
- "cdk deploy",
- "Note: Please refer to manual steps/instructions after the AWS CDK has successfully deployed in the Readme.md file"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions in the Readme.md file."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Gourang Harhare",
- "image": "None",
- "bio": "https://www.linkedin.com/in/gourang-harhare-022964a/",
- "linkedin": "https://www.linkedin.com/in/gourang-harhare-022964a/",
- "twitter": "None"
- }
- ]
-}
\ No newline at end of file
diff --git a/cognito-m2m-oauth-apigw-cdk/example-pattern.json b/cognito-m2m-oauth-apigw-cdk/example-pattern.json
deleted file mode 100644
index d52a42c26..000000000
--- a/cognito-m2m-oauth-apigw-cdk/example-pattern.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "title": "Cognito Machine-to-Machine (M2M) OAuth 2.0 Authentication Using Custom Scopes with Amazon API Gateway",
- "description": "This pattern demonstrates how to implement machine-to-machine (M2M) authentication using AWS Cognito, OAuth 2.0, API Gateway, and AWS Lambda. It showcases the integration of Cognito as the authentication provider, allowing requests to be authorized based on custom scopes defined in OAuth 2.0",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Get OAuth 2.0 access tokens from Cognito User Pool and use them to access API Gateway resources"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-m2m-oauth-apigw-cdk",
- "templateURL": "serverless-patterns/cognito-m2m-oauth-apigw-cdk",
- "projectFolder": "cognito-m2m-oauth-apigw-cdk",
- "templateFile": "src/lib/cdk-cognito-oauth-authorizer-stack.ts"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the Github repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Rushi Patel",
- "image": "https://www.devxushi.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fmy1.fcdd96b0.JPG&w=3840&q=75",
- "bio": "Software Enginner at Cancer Research UK, passionate about event-driven architectures and Serverless.",
- "linkedin": "rushi-patel-78924612a"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/cognito-restapi-vpclink-cdk/example-pattern.json b/cognito-restapi-vpclink-cdk/example-pattern.json
deleted file mode 100644
index 295324d7e..000000000
--- a/cognito-restapi-vpclink-cdk/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Cognito to API Gateway private REST API",
- "description": "This pattern shows how to authenticate and authorize requests to a private REST API Gateway with Amazon Cognito.",
- "language": "Node.js",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Amazon Cognito with a private AWS REST API Gateway to authenticate and authorize requests to a private HTTP endpoint hosted on a Network Load Balancer and ECS/Fargate."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-restapi-vpclink-cdk",
- "templateURL": "serverless-patterns/cognito-restapi-vpclink-cdk",
- "projectFolder": "cognito-restapi-vpclink-cdk",
- "templateFile": "cognito-restapi-vpclink-cdk/cdk/lib/cdk-cognito-fargate-stack.js"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Controlling access to a REST API with a Cognito User Pools Authorizer",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html"
- },
- {
- "text": "Understanding VPC links in Amazon API Gateway private integrations",
- "link": "https://aws.amazon.com/blogs/compute/understanding-vpc-links-in-amazon-api-gateway-private-integrations/"
- },
- {
- "text": "Architecture patterns for consuming private APIs cross-account",
- "link": "https://aws.amazon.com/blogs/compute/architecture-patterns-for-consuming-private-apis-cross-account/"
- },
- {
- "text": "Building private cross-account APIs using Amazon API Gateway and AWS PrivateLink",
- "link": "https://aws.amazon.com/blogs/compute/building-private-cross-account-apis-using-amazon-api-gateway-and-aws-privatelink/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Justin Plock",
- "image": "",
- "bio": "Principal Solutions Architect at AWS",
- "linkedin": "justinplock",
- "twitter": "@jplock"
- }
- ]
-}
diff --git a/cognito-restapi/example-pattern.json b/cognito-restapi/example-pattern.json
deleted file mode 100644
index 9114ad3b1..000000000
--- a/cognito-restapi/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon API Gateway with a Cognito User Pools Authorizer",
- "description": "Create a REST API Gateway with a Cognito User Pools Authorizer for access control",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway REST API endpoint that uses a Cognito User Pools Authorizer for access control.",
- "It assumes that the Cognito User Pool already exists and takes the Cognito User Pool ARN as an input parameter which must be provided by the user."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-restapi",
- "templateURL": "serverless-patterns/cognito-restapi",
- "projectFolder": "cognito-restapi",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Controlling access to a REST API with a Cognito User Pools Authorizer",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/cognito-sns-sms-origination-id/example-pattern.json b/cognito-sns-sms-origination-id/example-pattern.json
deleted file mode 100644
index 2f3f7a42a..000000000
--- a/cognito-sns-sms-origination-id/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Amazon Cognito - SNS SMS Origination Id",
- "description": "This pattern creates an Amazon Cognito userpool and an AWS Lambda function.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon Cognito userpool and an AWS lambda function with required polices. In general, Amazon Cognito sends SMS on your behalf by publishing the request to send SMS for MFA and other use cases. Cognito uses the default settings when choosing origination IDs. If you cannot secure the same origination ID, or if you operate with multiple origination IDs with your account, you will need to select the correct origination ID for your Cognito use cases. This solution will provide guidance on how to use Cognito with lambda triggers to select origination IDs to suit your needs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-sns-sms-origination-id",
- "templateURL": "serverless-patterns/cognito-sns-sms-origination-id",
- "projectFolder": "cognito-sns-sms-origination-id",
- "templateFile": "lib/cognito-sns-sms-origination-identity-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Cognito",
- "link": "https://aws.amazon.com/cognito/"
- },
- {
- "text": "Amazon SNS",
- "link": "https://aws.amazon.com/sns/"
- },
- {
- "text": "Custom SMS sender Lambda trigger",
- "link": "https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-custom-sms-sender.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Vinodh Kannan Sadayamuthu",
- "image": "https://i.postimg.cc/sx0BqLmv/vinodh.jpg",
- "bio": "Vinodh is a Specialist Solution Architect at AWS.",
- "linkedin": "vinodh-aws"
- },
- {
- "name": "Sarath Kumar K.S",
- "image": "https://i.postimg.cc/5NhyzLRd/Sarath.png",
- "bio": "Sarath is a Senior Technical Account Manager at AWS.",
- "linkedin": "kssarathkumar"
- }
- ]
-}
\ No newline at end of file
diff --git a/cognito-user-pool/example-pattern.json b/cognito-user-pool/example-pattern.json
deleted file mode 100644
index 5b2dd0253..000000000
--- a/cognito-user-pool/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon Cognito User Pool",
- "description": "Create a Cognito User Pool with its associated User, App Client, Domain and Resource Server",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon Cognito User Pool with its associated User, App Client, Domain and Resource Server.",
- "You can use the tokens provided upon successful authentication with your User Pool to, for example, access a REST API protected with a Cognito User Pool authorizer."
-
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cognito-user-pool",
- "templateURL": "serverless-patterns/cognito-user-pool",
- "projectFolder": "cognito-user-pool",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Cognito User Pool with its associated User, App Client, Domain and Resource Server",
- "link": "https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "Deploy the stack: sam deploy
."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Albert Blaya, Solutions Architect",
- "name": "Albert Blaya",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQEw2HXx9zs7yg/profile-displayphoto-shrink_200_200/0/1600474292127?e=1655942400&v=beta&t=SbeIn9psV0BIFkbROTDRIfPMKMtyrrgBdgt0tRHY0BY",
- "bio": "Albert is a Solutions Architect at Amazon Web Services based in Australia.",
- "linkedin": "albertblaya"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/content-filter-pattern-kinesis-cdk/example-pattern.json b/content-filter-pattern-kinesis-cdk/example-pattern.json
deleted file mode 100644
index a62d86707..000000000
--- a/content-filter-pattern-kinesis-cdk/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Kinesis to Kinesis using EventBridge Pipes with content filter pattern",
- "description": "This pattern demonstrates the content filter pattern between two Kinesis streams, implemented using an EventBridge Pipe.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The pipe uses a filter to discard unwanted messages and an input transformer to select which attributes to keep for the remaining messages."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/content-filter-pattern-kinesis-cdk",
- "templateURL": "serverless-patterns/content-filter-pattern-kinesis-cdk",
- "projectFolder": "content-filter-pattern-kinesis-cdk",
- "templateFile": "src/lib/content-filter-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "More Enterprise Integration Patterns on AWS Samples",
- "link": "https://github.com/aws-samples/amazon-eventbridge-pipes-architectural-patterns"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Dominik Richter",
- "image": "https://avatars.githubusercontent.com/u/29404931",
- "bio": "Solutions Architect at AWS, passionate about event-driven architectures and Serverless.",
- "linkedin": "do-richter"
- }
- ]
-}
diff --git a/cw-sns-secretsmanager/example-pattern.json b/cw-sns-secretsmanager/example-pattern.json
deleted file mode 100644
index 714fbea7d..000000000
--- a/cw-sns-secretsmanager/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "CloudWatch Events, SNS and AWS Secrets Manager Integration",
- "description": "An application that Detects and Notify on Amazon Secrets Manager Secret Key Creation, Updation and Deletion using Amazon CloudWatch event and Amazon SNS",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys an application to Detect and Notify on Amazon Secrets Manager Secret Key Creation, Updation and Deletion using Amazon CloudWatch event and Amazon SNS",
- "Once the template is deployed, you will receive an email notification on the email address you defined in Requirements. Make sure to confirm email subscription in order to receive updates related to your Secret Keys present in AWS Secret manager."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cw-sns-secretsmanager",
- "templateURL": "serverless-patterns/cw-sns-secretsmanager",
- "projectFolder": "cw-sns-secretsmanager",
- "templateFile": "cw-sns-secretsmanager/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Create an AWS Secrets Manager secret",
- "link": "https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html"
- },
- {
- "text": "Monitor AWS Secrets Manager secrets",
- "link": "https://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Jainam Shah",
- "image": "https://drive.google.com/file/d/19NrbeT5LdQRAqnOGdEXsPZKvWph3Ba8U/view?usp=sharing",
- "bio": "Technical Account Manager @ AWS",
- "linkedin": "https://www.linkedin.com/in/jainamshah92",
- "twitter": "@imJshah92"
- }
- ]
-}
diff --git a/cwlogs-lambda-sns-sqs-cdk/example-pattern.json b/cwlogs-lambda-sns-sqs-cdk/example-pattern.json
deleted file mode 100644
index 009610f86..000000000
--- a/cwlogs-lambda-sns-sqs-cdk/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "CloudWatch Logs Subscription to Lambda with SNS to SQS",
- "description": "Create a CloudWatch Logs subscription to a Lambda function, publish to SNS topic and deliver logs to SQS queue.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to use CloudWatch Logs to create Lambda subscription filter and publish the filtered logs to an SNS topic and deliver to an SQS queue. The logs sent to Lambda through a subsciption filter are base64 encoded and compressed with gzip format."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/cwlogs-lambda-sns-sqs-cdk",
- "templateURL": "serverless-patterns/cwlogs-lambda-sns-sqs-cdk",
- "projectFolder": "cwlogs-lambda-sns-sqs-cdk",
- "templateFile": "src/cwlogs_lambda_sns_sqs/cwlogs_lambda_sns_sqs_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using CloudWatch Logs subscription filters",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/SubscriptionFilters.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["cdk destroy"]
- },
- "authors": [
- {
- "name": "Kimia Yahyazadeh",
- "image": "",
- "bio": "AWS Cloud Application Developer",
- "linkedin": "kimiayahyazadeh"
- },
- {
- "name": "Sakthivel Chellapparimanam",
- "image": "",
- "bio": "AWS - Cloud Application Architect",
- "linkedin": "srcsakthivel",
- "twitter": "@srcsakthivel"
- }
- ]
-}
diff --git a/delayed-eventbridge-events/example-pattern.json b/delayed-eventbridge-events/example-pattern.json
deleted file mode 100644
index a3b911c63..000000000
--- a/delayed-eventbridge-events/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "Delayed EventBridge events with EventBridge Scheduler",
- "description": "Setup future EventBridge events with EventBridge Scheduler",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern listens for EventBridge events, processes them and creates schedules for every user. 24 hours after user has been created a schedule is run that publishes events directly into EventBridge"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/delayed-eventbridge-events",
- "templateURL": "serverless-patterns/delayed-eventbridge-events",
- "projectFolder": "delayed-eventbridge-events",
- "templateFile": "cdk/lib/delayed-eventbridge-events-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "What is Amazon EventBridge Scheduler?",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/dynamodb-eventbridge-java/example-pattern.json b/dynamodb-eventbridge-java/example-pattern.json
deleted file mode 100644
index a3a963147..000000000
--- a/dynamodb-eventbridge-java/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "DynamoDB to Lambda to EventBridge",
- "description": "Send DynamoDB table changes to EventBridge via Lambda.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function that captures data in DynamoDB streams and sends to EventBridge.",
- "When new items are added, updated or deleted on the DynamoDB table, the item-level changes in the table are streamed to the EventBridge custom bus."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-eventbridge-java",
- "templateURL": "serverless-patterns/dynamodb-eventbridge-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Docs: DynamoDB Streams and AWS Lambda Triggers",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.Lambda.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Tadeu Mendonça",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-luiz-tadeu-mendonca.jpg",
- "bio": "Cloud Application Architect, AWS.",
- "twitter": "@tadeumendonca"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/dynamodb-eventbridge-transformer/example-pattern.json b/dynamodb-eventbridge-transformer/example-pattern.json
deleted file mode 100644
index f26fc25e5..000000000
--- a/dynamodb-eventbridge-transformer/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Amazon DynamoDB to Amazon EventBridge using Amazon Eventbridge Pipes.",
- "description": "This pattern takes a change data capture event from DynamoDB, removes the data type descriptors and sends the simplified event to an EventBridge bus.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The key components of this architecture are DynamoDB as source and EventBridge as target, connected by a pipe. To demonstrate the end-to-end message flow, the Lambda function writes sample data to the DynamoDB table.",
- "The pattern uses an input transformer to change the event's structure from DynamoDB's response format, which includes data type descriptors, to a simpler JSON structure. The input transformer also allows us to transform the list using the following notation: <$.dynamodb.NewImage.list.L[*].S>"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-eventbridge-transformer",
- "templateURL": "serverless-patterns/dynamodb-eventbridge-transformer",
- "projectFolder": "dynamodb-eventbridge-transformer",
- "templateFile": "src/lib/pipes-from-dynamo-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "More Enterprise Integration Patterns on AWS Samples",
- "link": "https://github.com/aws-samples/amazon-eventbridge-pipes-architectural-patterns"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Dominik Richter",
- "image": "https://avatars.githubusercontent.com/u/29404931",
- "bio": "Solutions Architect at AWS, passionate about event-driven architectures and Serverless.",
- "linkedin": "do-richter"
- }
- ]
-}
diff --git a/dynamodb-kinesis/example-pattern.json b/dynamodb-kinesis/example-pattern.json
deleted file mode 100644
index 36f0273db..000000000
--- a/dynamodb-kinesis/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Create a Lambda function that sends events to EventBridge.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/lambda-eventbridge/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "author": {
- "headline": "Presented by James Beswick, Developer Advocate",
- "name": "James Beswick",
- "imageURL": "https://pbs.twimg.com/profile_images/1165718285754753025/OrGcUHER_400x400.jpg",
- "twitter": "jbesw",
- "bio": "James is a senior developer advocate for Serverless Applications at Amazon Web Services based in the US. Prior to joining AWS Ben worked in a number of different technical roles specializing in workflow Automation and web development."
- }
-}
diff --git a/dynamodb-lambda-cdk-kotlin/example-pattern.json b/dynamodb-lambda-cdk-kotlin/example-pattern.json
deleted file mode 100644
index af8f465b6..000000000
--- a/dynamodb-lambda-cdk-kotlin/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "DynamoDB Stream to AWS Lambda using CDK in Kotlin",
- "description": "Create an AWS Lambda function that receives DynamoDB change items.",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application demonstrates how to establish an Amazon DynamoDB table stream, an AWS Lambda function, and the minimal IAM permission needed for the application to function properly.",
- "When items are inserted or updated in a DynamoDB table, the changes are sent to a stream. This pattern configures a Lambda function to poll this stream. The function is invoked with a payload containing the contents of the table item that changed.",
- "The application was made using Kotlin for both CDK and Lambda code."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-lambda-cdk-kotlin",
- "templateURL": "serverless-patterns/dynamodb-lambda-cdk-kotlin",
- "projectFolder": "dynamodb-lambda-cdk-kotlin",
- "templateFile": "stack/src/main/kotlin/org/myorg/example/MyStack.kt"
- }
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deploy instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Sidharta Rezende",
- "image": "https://avatars.githubusercontent.com/u/41924052?s=96&v=4",
- "bio": "Sidharta Rezende is a Senior Cloud Application Architect at Amazon Web Services, based in Brazil",
- "linkedin": "sidharta-rezende/",
- "twitter": "SidhLongbirds"
- }
- ]
-}
diff --git a/dynamodb-lambda-cdk/example-pattern.json b/dynamodb-lambda-cdk/example-pattern.json
deleted file mode 100644
index 36f0273db..000000000
--- a/dynamodb-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Create a Lambda function that sends events to EventBridge.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/lambda-eventbridge/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "author": {
- "headline": "Presented by James Beswick, Developer Advocate",
- "name": "James Beswick",
- "imageURL": "https://pbs.twimg.com/profile_images/1165718285754753025/OrGcUHER_400x400.jpg",
- "twitter": "jbesw",
- "bio": "James is a senior developer advocate for Serverless Applications at Amazon Web Services based in the US. Prior to joining AWS Ben worked in a number of different technical roles specializing in workflow Automation and web development."
- }
-}
diff --git a/dynamodb-lambda/example-pattern.json b/dynamodb-lambda/example-pattern.json
deleted file mode 100644
index 36f0273db..000000000
--- a/dynamodb-lambda/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Create a Lambda function that sends events to EventBridge.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/lambda-eventbridge/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "author": {
- "headline": "Presented by James Beswick, Developer Advocate",
- "name": "James Beswick",
- "imageURL": "https://pbs.twimg.com/profile_images/1165718285754753025/OrGcUHER_400x400.jpg",
- "twitter": "jbesw",
- "bio": "James is a senior developer advocate for Serverless Applications at Amazon Web Services based in the US. Prior to joining AWS Ben worked in a number of different technical roles specializing in workflow Automation and web development."
- }
-}
diff --git a/dynamodb-pipes-sqs-cdk/example-pattern.json b/dynamodb-pipes-sqs-cdk/example-pattern.json
deleted file mode 100644
index 56a0631fe..000000000
--- a/dynamodb-pipes-sqs-cdk/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "DynamoDB Streams to SQS using EventBridge Pipes",
- "description": "This pattern demonstrates a low code way to send DynamoDB stream records to an SQS queue using EventBridge Pipes.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates a low code way to send DynamoDB stream records to an SQS queue using EventBridge Pipes.",
- "When items are put in the DynamoDB table, the DynamoDB stream captures a time ordered sequence of the changes to the items. The EventBridge pipe uses the stream records as a source and writes those records to the target SQS queue.",
- "This pattern deploys one DynamoDB Table with streams enabled, one SQS Queue, one an EventBride Pipe to connect them."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-pipes-sqs-cdk",
- "templateURL": "serverless-patterns/dynamo-pipes-sqs-cdk",
- "projectFolder": "dynamodb-pipes-sqs-cdk",
- "templateFile": "dynamodb-pipes-sqs-cdk/src/DynamoPipeSqsDynamoPipeSqsStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "DynamoDB Table L2 Construct",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_dynamodb.Table.html"
- },
- {
- "text": "EventBridge Pipes L1 Construct",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_pipes.CfnPipe.html"
- },
- {
- "text": "SQS Queue L2 Construct",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_sqs.Queue.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tim Wondergem",
- "image": "https://avatars.githubusercontent.com/u/4333425",
- "bio": "Tim Wondergem is a Cloud Application Architect at AWS whose passions include event driven systems serverless.",
- "linkedin": "https://www.linkedin.com/in/tim-wondergem-18591a3/",
- "twitter": "tim_wondergem"
- }
- ]
-}
diff --git a/dynamodb-seed-data-on-create-cdk/example-pattern.json b/dynamodb-seed-data-on-create-cdk/example-pattern.json
deleted file mode 100644
index 06d18d45d..000000000
--- a/dynamodb-seed-data-on-create-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "DynamoDB seed data on create with custom resource using CDK (Typescript)",
- "description": "Create a DynamoDB table and insert data upon creation using custom resource.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to create a DynamoDB table and insert data upon creation using custom resource."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-seed-data-on-create-cdk",
- "templateURL": "serverless-patterns/dynamodb-seed-data-on-create-cdk",
- "projectFolder": "dynamodb-seed-data-on-create-cdk",
- "templateFile": "dynamodb-seed-data-on-create-cdk/app-config-feature-flag-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "CDK Custom Resource",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.custom_resources.AwsCustomResource.html"
- },
- {
- "text": "Cloudformation Custom Resource",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources-lambda.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusisast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/dynamodb-stream-lambda-cdk-dotnet/example-pattern.json b/dynamodb-stream-lambda-cdk-dotnet/example-pattern.json
deleted file mode 100644
index edcb6ec4e..000000000
--- a/dynamodb-stream-lambda-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Amazon DynamoDB Stream to AWS Lambda",
- "description": "Create an AWS Lambda function that receives DynamoDB change items.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application demonstrates how to establish an Amazon DynamoDB table stream, an AWS Lambda function, and the minimal IAM permission needed for the application to function properly.",
- "When items are inserted or updated in a DynamoDB table, the changes are sent to a stream. This pattern configures a Lambda function to poll this stream. The function is invoked with a payload containing the contents of the table item that changed."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-lambda-cdk-dotnet",
- "projectFolder": "dynamodb-lambda-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-lambda-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/dynamodb-lambda-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- }
- ]
- }
\ No newline at end of file
diff --git a/dynamodb-streams-appsync-subscription/example-pattern.json b/dynamodb-streams-appsync-subscription/example-pattern.json
deleted file mode 100644
index ee788125e..000000000
--- a/dynamodb-streams-appsync-subscription/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "DynamoDB Streams to AppSync subscription",
- "description": "Listen to DynamoDB changes using AppSync subscriptions",
- "language": "TypeScript",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "In some of your projects, you might want to be able to listen to changes made on your database that are not performed through client-side mutations.",
- "This sample project creates an AppSync API allowing you to listen to new items being created on a specific DynamoDB table through AWS AppSync subscriptions.",
- "With this pattern, a Lambda function will be invoked for every new item created on a DynamoDB table. It will in turn call an AppSync mutation with data source set as `None`. An AppSync subscription will be subscribed to that mutation allowing end users to be notified of a newly created DynamoDB item."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-appsync-subscription",
- "templateURL": "serverless-patterns/dynamodb-streams-appsync-subscription",
- "projectFolder": "dynamodb-streams-appsync-subscription",
- "templateFile": "dynamodb-streams-appsync-subscription/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Appsync",
- "link": "https://aws.amazon.com/appsync/"
- },
- {
- "text": "AWS Re:Post - Listen to external DB changes using AppSync",
- "link": "https://repost.aws/knowledge-center/appsync-notify-subscribers-real-time"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alexis Philippart de Foy",
- "image": "https://media.licdn.com/dms/image/C4D03AQFyN5GLrFk-0g/profile-displayphoto-shrink_800_800/0/1586853008031?e=1693440000&v=beta&t=0BtjX92oZxhHUrrIzh55wah8V1OiwOAOyigPtfAcZdo",
- "bio": " I am a Startup Solutions Architect, Serverless enthusiast and former Startup Founder.",
- "linkedin": "apdf",
- "twitter": "@aphilippartd"
- }
- ]
-}
\ No newline at end of file
diff --git a/dynamodb-streams-lambda-dynamodb/example-pattern.json b/dynamodb-streams-lambda-dynamodb/example-pattern.json
deleted file mode 100644
index e651c9166..000000000
--- a/dynamodb-streams-lambda-dynamodb/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "DynamoDB streams to Lambda to DynamoDB",
- "description": "This application demonstrates how to Leverage AWS CDK, Lambda and DynamoDB Streams to copy data from Source to Target DynamoDB table.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Amazon DynamoDB is being used by thousands of customers globally to build the mission-critical business applications due to various benefits such as scalability, reliability, low latency, high durability etc. While leveraging DynamoDB database, customers come across many scenarios where they want to copy data from one DynamoDB table to another at near real-time. This pattern addresses that use-case. You'll learn how you can leverage .NET based CDK application along-with Lambda function and DynamoDB streams to move data between source and target DynamoDB tables."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-lambda-dynamodb",
- "projectFolder": "dynamodb-streams-lambda-dynamodb",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-lambda-dynamodb/README.md",
- "templateURL": "serverless-patterns/dynamodb-streams-lambda-dynamodb",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- },
- {
- "name": "Vijai Anand Ramalingam",
- "image": "https://avatars.githubusercontent.com/u/83067978?v=4",
- "bio": "Vijai Anand Ramalingam ia an Application Developer - ISV at Amazon Web Services",
- "linkedin": "vijai-anand-ramalingam-77439736"
- }
- ]
-}
\ No newline at end of file
diff --git a/dynamodb-streams-lambda-eventbridge-sam-node/example-pattern.json b/dynamodb-streams-lambda-eventbridge-sam-node/example-pattern.json
deleted file mode 100644
index 2671e9a00..000000000
--- a/dynamodb-streams-lambda-eventbridge-sam-node/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon Dynamodb Streams to AWS Lambda to Amazon EventBridge",
- "description": "TThe AWS SAM template deploys a Lambda function, a DynamoDB table and an Amazon EventBridge bus, and the minimum IAM resources required to run the application.",
- "language": "TypeScript",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The changes are sent to a stream when items are written in a DynamoDB table. This pattern configures a Lambda function to poll this stream. The function is invoked with a payload containing the table item that has been inserted. The Lambda will then emit an event to Amazon EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-lambda-eventbridge-sam-node",
- "templateURL": "serverless-patterns/dynamodb-streams-lambda-eventbridge-sam-node",
- "projectFolder": "dynamodb-streams-lambda-eventbridge-sam-node",
- "templateFile": "dynamodb-streams-lambda-eventbridge-sam-node/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon DynamoDB Streams",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/streamsmain.html"
- },
- {
- "text": "AWS Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "Amazon EventBridge",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/dynamodb-streams-lambda-eventbridge-sam-rust/example-pattern.json b/dynamodb-streams-lambda-eventbridge-sam-rust/example-pattern.json
deleted file mode 100644
index d681eaf88..000000000
--- a/dynamodb-streams-lambda-eventbridge-sam-rust/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon Dynamodb Streams to AWS Lambda to Amazon EventBridge",
- "description": "TThe AWS SAM template deploys a Lambda function, a DynamoDB table and an Amazon EventBridge bus, and the minimum IAM resources required to run the application.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The changes are sent to a stream when items are written in a DynamoDB table. This pattern configures a Lambda function to poll this stream. The function is invoked with a payload containing the table item that has been inserted. The Lambda will then emit an event to Amazon EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-lambda-eventbridge-sam-rust",
- "templateURL": "serverless-patterns/dynamodb-streams-lambda-eventbridge-sam-rust",
- "projectFolder": "dynamodb-streams-lambda-eventbridge-sam-rust",
- "templateFile": "dynamodb-streams-lambda-eventbridge-sam-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon DynamoDB Streams",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/streamsmain.html"
- },
- {
- "text": "AWS Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "Amazon EventBridge",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: make delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/dynamodb-streams-lambda-terraform-java/example-pattern.json b/dynamodb-streams-lambda-terraform-java/example-pattern.json
deleted file mode 100644
index f0bb2d890..000000000
--- a/dynamodb-streams-lambda-terraform-java/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "DynamoDB to Lambda",
- "description": "Invoke a Lambda function from changes to a DynamoDB table using event-based filters",
- "language": "Java",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The Terraform template deploys a Lambda function, a DynamoDB table, and the minimum IAM resources required to run the application.",
- "When items are written or updated in the DynamoDB table, the changes are sent to a stream. This pattern configures a Lambda function to poll this stream. The function is invoked with a payload containing the contents of the table item that changed."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-lambda-terraform-java",
- "templateURL": "serverless-patterns/dynamodb-streams-lambda-terraform-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Docs: DynamoDB Streams and AWS Lambda Triggers",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.Lambda.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Change directory: cd eventbridge-cloudwatch-terraform
.",
- "Delete the stack: terraform destroy
.",
- "Confirm the stack has been deleted: terraform show
."
- ]
- },
- "authors": [
- {
- "name": "Ezzeddine El Ayoubi",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-ezzeddine-el-ayoubi.jpg",
- "bio": "Devops Cloud Engineer (via Passionate People) at IKEA",
- "linkedin": "ezzeddine-62535397"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/dynamodb-streams-to-eventbridge-outbox-pattern/example-pattern.json b/dynamodb-streams-to-eventbridge-outbox-pattern/example-pattern.json
deleted file mode 100644
index 275569062..000000000
--- a/dynamodb-streams-to-eventbridge-outbox-pattern/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "Outbox pattern with DynamoDB and EventBridge",
- "description": "Outbox pattern example with DynamoDB streams and EventBridge. Listen for new inserts and raise domain events into your architecture.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern will insert data into a DynamoDB table and setup a stream into Lambda. Lambda will then process the messages and forward them onto EventBridge for downstream consumers"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/dynamodb-streams-to-eventbridge-outbox-pattern",
- "templateURL": "serverless-patterns/dynamodb-streams-to-eventbridge-outbox-pattern",
- "projectFolder": "dynamodb-streams-to-eventbridge-outbox-pattern",
- "templateFile": "lib/eventbridge-outbox-pattern-with-ddb-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Transactional outbox",
- "link": "https://microservices.io/patterns/data/transactional-outbox.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.jpg",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/ecs-windows-cdk-dotnet/example-pattern.json b/ecs-windows-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 29eef2282..000000000
--- a/ecs-windows-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Running Windows Containers with Amazon ECS",
- "description": "This AWS CDK application demonstrates how to deploy a application on Windows based Amazon Elastic Container Service (Amazon ECS) Cluster.",
- "language": ".NET",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses .NET as a programming language to create the entire AWS CDK stack. For demonstration purpose, Windows sample image is used (mcr.microsoft.com/windows/servercore/iis), however same steps can be performed if Windows Docker image need to be deployed from Amazon Elastic Container Registry (Amazon ECR) repository."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/ecs-windows-cdk-dotnet",
- "projectFolder": "ecs-windows-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/ecs-windows-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/ecs-windows-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/WindowsECS/WindowsECSClusterStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- },
- {
- "name": "Vijai Anand Ramalingam",
- "image": "https://avatars.githubusercontent.com/u/83067978?v=4",
- "bio": "Vijai Anand Ramalingam ia an Application Developer - ISV at Amazon Web Services",
- "linkedin": "vijai-anand-ramalingam-77439736"
- }
- ]
- }
\ No newline at end of file
diff --git a/elemental-mediaconnect-medialive-mediapackage-cdk-ts/example-pattern.json b/elemental-mediaconnect-medialive-mediapackage-cdk-ts/example-pattern.json
deleted file mode 100644
index 00821d602..000000000
--- a/elemental-mediaconnect-medialive-mediapackage-cdk-ts/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Live Streaming on AWS for SRT/Zixi/RIST/RTP FEC input sources",
- "description": "This pattern creates a live streaming stack leveraging AWS MediaConnect, AWS Elemental MediaLive and MediaPackage for SRT/Zixi/RIST/RTP FEC input sources.",
- "language": "typescript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The solution configures AWS Elemental MediaLive with one of three encoding profiles: HD-1080p, HD-720p and SD-540p.",
- "AWS Elemental MediaPackage ingests the MediaLive Output and package the Live stream into HLS,DASH and CMAF."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-mediaconnect-medialive-mediapackage-cdk-ts",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-mediaconnect-medialive-mediapackage-cdk-ts/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Live Streaming on AWS with Amazon S3",
- "link": "https://github.com/aws-solutions/live-streaming-on-aws-with-amazon-s3"
- },
- {
- "text": "Live Streaming on AWS",
- "link": "https://github.com/aws-solutions/live-stream-on-aws"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "headline": "Presented by Corneliu Croitoru, Prototyping Architect",
- "name": "Corneliu Croitoru",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-corneliu-croitoru.jpg",
- "bio": "Developer at heart, in 2018 joined AWS as a Solution Architect and in 2021 joined EMEA Prototyping Team. Now he is building, jointly with customers, the most exciting and innovative prototypes on AWS. Specialized on Serverless/Edge Services/Media Streaming.",
- "linkedin": "corneliucroitoru",
- "twitter": "@cornel_croi"
- }
- ]
- }
\ No newline at end of file
diff --git a/elemental-medialive-mediapackage-cdk-ts/example-pattern.json b/elemental-medialive-mediapackage-cdk-ts/example-pattern.json
deleted file mode 100644
index 3ee1fd306..000000000
--- a/elemental-medialive-mediapackage-cdk-ts/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "Live Streaming on AWS using RTP/RTMP sources",
- "description": "This pattern creates a live streaming stack leveraging AWS Elemental MediaLive, MediaPackage for RTP/RTMP input sources.",
- "language": "nodejs",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "* To solution Configures AWS Elemental MediaLive with one of three encoding profiles: HD-1080p, HD-720p and SD-540p",
- "* The solution can be configured with the following input type: RTP_PUSH, RTMP_PUSH, RTMP_PULL and URL_PULL",
- "* AWS Elemental MediaPackage ingests the MediaLive Output and package the Live stream into HLS,DASH and CMAF"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-medialive-mediapackage-cdk-ts",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-medialive-mediapackage-cdk-ts/README.md"
- }
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Corneliu Croitoru, Prototyping Architect",
- "name": "Corneliu Croitoru",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-corneliu-croitoru.jpg",
- "bio": "Developer at heart, in 2018 joined AWS as a Solution Architect and since 2021 building, jointly with customers, the most exciting and innovative prototypes on AWS.",
- "linkedin": "corneliucroitoru",
- "twitter": "@cornel_croi"
- }
- ]
- }
\ No newline at end of file
diff --git a/elemental-mediapackage-cloudfront-cdk-ts/example-pattern.json b/elemental-mediapackage-cloudfront-cdk-ts/example-pattern.json
deleted file mode 100644
index 2efdb2296..000000000
--- a/elemental-mediapackage-cloudfront-cdk-ts/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "Live Streaming content at scale using Amazon CloudFront",
- "description": "This pattern demonstrates how to create MediaPackage custom endpoints as the Origins for a CloudFront distribution to enable the live stream content to be delivered globally and at scale.",
- "language": "typescript",
- "level": "300",
- "framework": "CDK",
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-mediapackage-cloudfront-cdk-ts",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/elemental-mediapackage-cloudfront-cdk-ts/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Live Streaming on AWS with Amazon S3",
- "link": "https://github.com/aws-solutions/live-streaming-on-aws-with-amazon-s3"
- },
- {
- "text": "Live Streaming on AWS",
- "link": "https://github.com/aws-solutions/live-stream-on-aws"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "headline": "Presented by Corneliu Croitoru, Prototyping Architect",
- "name": "Corneliu Croitoru",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-corneliu-croitoru.jpg",
- "bio": "Developer at heart, in 2018 joined AWS as a Solution Architect and in 2021 joined EMEA Prototyping Team. Now he is building, jointly with customers, the most exciting and innovative prototypes on AWS. Specialized on Serverless/Edge Services/Media Streaming",
- "linkedin": "corneliucroitoru",
- "twitter": "@cornel_croi"
- }
- ]
- }
\ No newline at end of file
diff --git a/event-bridge-scheduler-lambda-cdk-dotnet/example-pattern.json b/event-bridge-scheduler-lambda-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 2719535b1..000000000
--- a/event-bridge-scheduler-lambda-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "EventBridge Scheduler to call Lambda every 5 minutes with CDK",
- "description": "Simple pattern that triggers a .NET Lambda function every 5 minutes using Amazon EventBridge Scheduler and CDK",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The CDK stack creates a Lambda function, a scheduled event trigger using the AWS Scheduler service, and an IAM role with the required permissions for the Lambda function to be invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/event-bridge-scheduler-lambda-cdk-dotnet",
- "projectFolder": "event-bridge-scheduler-lambda-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/event-bridge-scheduler-lambda-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/event-bridge-scheduler-lambda-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Sanjay Chaudhari",
- "image": "https://avatars.githubusercontent.com/u/9101436?v=4",
- "bio": "Application Development Consultant at AWS Professional Services.",
- "linkedin": "sanjay-chaudhari-it",
- "twitter": "sanjaypc"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-api-destinations/10-stripe/example-pattern.json b/eventbridge-api-destinations/10-stripe/example-pattern.json
deleted file mode 100644
index e38c4d47f..000000000
--- a/eventbridge-api-destinations/10-stripe/example-pattern.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "title": "EventBridge API Destinations to Stripe",
- "description": "Create an API destination in EventBridge for Stripe APIs.",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern configures an EventRule, that routes to the EventBridge API destination in EventBridge for Stripe to create a new product object API.",
- "Once deployed, the pattern allows a user to send events easily through to create specific goods or services for supporting the product experience at Stripe. The pattern creates the following resources: ",
- "EventBridge Event Bus",
- "EventBridge Rule",
- "EventBridge Connection",
- "EventBridge API Destination",
- "IAM Role",
- "SQS Queue",
- "SQS Queue Policy",
- "The EventBridge Rule uses the API Destination and Connection as a target, SQS Queue as a Dead Letter Queue (DLQ), and the IAM role as its role. The created IAM role has the permission to allow InvokeApiDestination access to the EventBridge Rule.",
- "If using the custom named IAM role in this pattern, it requires the explicit acknowledgement that the stack template contains certain capabilities in order for AWS CloudFormation to create the stack. When using the AWS SAM CLI, the --capabilities=CAPABILITY_NAMED_IAM parameter can be added to the deployment command to explicitly acknowledge.",
- "To send events, go to the EventBridge Event Bus details. Select the Send events button. Select the Event Bus created by the pattern, \"StripeEventBus\". Enter \"MyStripeTestApp\" for the source. Enter \"MyStripeTestAppDetailType\" for the detail type. Enter Event details in json format for a creating a product (https://stripe.com/docs/api/products) API call.",
- "The Stripe API uses API keys to authenticate requests (https://stripe.com/docs/api/authentication.) Before using the pattern, obtain an API Key from Stripe and update the CloudFormation template parameter \"StripeAPIKeyValue\" using Bearer auth."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-api-destinations",
- "templateURL": "serverless-patterns/eventbridge-api-destinations",
- "projectFolder": "eventbridge-api-destinations",
- "templateFile": "eventbridge-api-destinations/10-stripe/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Stripe Docs",
- "link": "https://stripe.com/docs"
- },
- {
- "text": "Stripe API Documentation",
- "link": "https://stripe.com/docs/api"
- },
- {
- "text": "Using API destinations with Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/using-api-destinations-with-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cd ./10-stripe",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "1. From a command line in this directory, send a test event to EventBridge simulating a \"Payment failed\" event: aws events put-events --entries file://testEvent.json
"
- ]
- },
- "cleanup": {
- "text": [
- "1. Delete the stack: sam delete --stack-name STACK_NAME.
",
- "2. Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus
\""
- ]
- },
- "authors": [
- {
- "name": "Diana \"Di\" Dow",
- "image": "https://badgephotos.corp.amazon.com/?uid=didow",
- "bio": "AWS Technical Account Manager",
- "linkedin": "https://www.linkedin.com/in/diana-d-17a713/"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-cloudevents-transformer-cdk-typescript/example-pattern.json b/eventbridge-cloudevents-transformer-cdk-typescript/example-pattern.json
deleted file mode 100644
index d15c9b551..000000000
--- a/eventbridge-cloudevents-transformer-cdk-typescript/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "EventBridge CloudEvents Input Transformer to Lambda",
- "description": "This pattern uses an EventBridge input transfomer to convert an EventBridge event to a CloudEvent and send it to a Lambda function using the CloudEvents SDK for event handling.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "EventBridge events are converted to CloudEvents using an input transformer in a rule on a custom event bus. A Lambda function is configured as a target for that rule. The Lambda function uses the CloudEvents TypeScript SDK to deserialize and validate incoming CloudEvents."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-cloudevents-transformer-cdk-typescript",
- "templateURL": "serverless-patterns/eventbridge-cloudevents-transformer-cdk-typescript",
- "projectFolder": "eventbridge-cloudevents-transformer-cdk-typescript",
- "templateFile": "src/lib/eb-lambda-cloudevents-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Input Transformation Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-transform-target-input.html"
- },
- {
- "text": "CloudEvents Specification",
- "link": "https://cloudevents.io/"
- },
- {
- "text": "Cloudformation API for EventBridge",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Events.html"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Michael Gasch",
- "image": "https://avatars.githubusercontent.com/u/15986659",
- "bio": "Senior Product Manager Technical for Amazon EventBridge.",
- "linkedin": "michael-gasch-10603298"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-cloudwatch-dotnet-cdk/example-pattern.json b/eventbridge-cloudwatch-dotnet-cdk/example-pattern.json
deleted file mode 100644
index 2a3a21d4f..000000000
--- a/eventbridge-cloudwatch-dotnet-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "EventBridge to CloudWatch Logs",
- "description": "Create an EventBridge rule that sends events to CloudWatch Logs.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains a sample AWS CDK template to create an EventBridge Rule, as well as, a CloudWatch Logs Group.",
- "The EventBridge Rule publishes matched events to CloudWatch Logs.",
- "In this example, the rule filters for specific attributes in the event before sending to the CloudWatch Logs target."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-cloudwatch-dotnet-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-cloudwatch-dotnet-cdk/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Amir Khairalomoum",
- "image": "https://d2908q01vomqb2.cloudfront.net/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59/2021/06/29/Amir-Khairalomoum.jpg",
- "bio": "Amir is a Sr. Solutions Architect at AWS. He supports customers in their digital transformation and their cloud journey to AWS. He is passionate about serverless technologies.",
- "linkedin": "amir-khairalomoum",
- "twitter": "@mrark1361"
- }
- ]
-}
diff --git a/eventbridge-enrichment-with-lambda/example-pattern.json b/eventbridge-enrichment-with-lambda/example-pattern.json
deleted file mode 100644
index 29243e3ff..000000000
--- a/eventbridge-enrichment-with-lambda/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "EventBridge event enrichment with AWS Lambda",
- "description": "Enrich events with Lambda and put them back onto the event bus for downstream consumers",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern will produce events with enrichment flag. Enricher (Lambda function) picks up the event, enriches then puts the event back onto the bus. Downstream consumers get the enriched event"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-enrichment-with-lambda",
- "templateURL": "serverless-patterns/eventbridge-enrichment-with-lambda",
- "projectFolder": "eventbridge-enrichment-with-lambda",
- "templateFile": "lib/single-bus-enrichment-with-lambda.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Content rnricher messaging pattern",
- "link": "https://www.enterpriseintegrationpatterns.com/DataEnricher.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.jpg",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-firehose-cdk/example-pattern.json b/eventbridge-firehose-cdk/example-pattern.json
deleted file mode 100644
index 04240910e..000000000
--- a/eventbridge-firehose-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Eventbridge to Kinesis Firehose to S3",
- "description": "Forward custom events to Amazon Simple Storage Service (Amazon S3) using EventBridge rules and Amazon Kinesis Data Firehose.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The purpose of this pattern is to demonstrate how to forward custom events to Amazon Simple Storage Service (Amazon S3) for long-term storage, analysis, and auditing purposes using EventBridge rules and Amazon Kinesis Data Firehose. This pattern is leveraging the native integration between these 2 services which means only JSON-based, structured language is used to define the implementation.",
- "Using Kinesis Data Firehose as an intermediary step between EventBridge and S3 takes advantage of Kinesis Data Firehose's dynamic partitioning capability to deliver events to the S3 bucket partitioned by detail-type and receipt time.",
- "This pattern deploys one KMS Key, one IAM Role, one Kinesis Firehose Delivery Stream, one EventBridge Event Bus and Rule, and one S3 Bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-firehose-cdk",
- "templateURL": "serverless-patterns/eventbridge-firehose-cdk",
- "projectFolder": "eventbridge-firehose-cdk",
- "templateFile": "eventbridge-firehose-cdk/app.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Dynamic Partitioning in Kinesis Data Firehose",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/dynamic-partitioning.html"
- },
- {
- "text": "Audit AWS service events with Amazon EventBridge and Amazon Kinesis Data Firehose",
- "link": "https://aws.amazon.com/blogs/big-data/audit-aws-service-events-with-amazon-eventbridge-and-amazon-kinesis-data-firehose/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Maya Flores",
- "image": "https://media-exp1.licdn.com/dms/image/C4E03AQGFaDVfkIJi4g/profile-displayphoto-shrink_200_200/0/1620953260457?e=1671062400&v=beta&t=pVt_BUU-r7MtlMwcOxgXgtaUM2tVRe4CUtlUknM--os",
- "bio": "Partner Solutions Architect @ AWS. Serverless enthusiast.",
- "linkedin": "maya-m-flores"
- }
- ]
-}
diff --git a/eventbridge-firehose-s3-cdk/example-pattern.json b/eventbridge-firehose-s3-cdk/example-pattern.json
deleted file mode 100644
index 0dffd32d1..000000000
--- a/eventbridge-firehose-s3-cdk/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Amazon EventBridge to Amazon Firehose Delivery Stream to Amazon S3 using .Net CDK",
- "description": "Creates EventBridge, Firehose Delivery Stream, and S3 bucket. Apply Firehose DynamicPartitioningConfiguration to parse the input message to extract department value to use it to create S3 partition",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When user send message to EventBridge bus, message will get routed to EventBridge rule based on 'DetailType'.",
- "Then EventBridge rule send 'Detail' field value from message to rule target Firehose delivery stream.",
- "Once message reach at Firehose delivery stream, message will get process by JsonParsingEngine to read 'Department' field value, this value used for S3 prefix.",
- "After message processing, message will get delivred to targeted S3 bucket by following calculated S3 prefix based on 'Department' field value."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-firehose-s3-cdk",
- "templateURL": "serverless-patterns/eventbridge-firehose-s3-cdk",
- "projectFolder": "eventbridge-firehose-s3-cdk",
- "templateFile": "eventbridge-firehose-s3-cdk/src/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Kinesis Data Firehose Delivery Stream",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html"
- },
- {
- "text": "Amazon EventBridge",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-get-started.html"
- },
- {
- "text": "Amazon S3",
- "link": "https://aws.amazon.com/s3/?nc=sn&loc=0"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy EventBridgeFirehoseS3Stack"]
- },
- "testing": {
- "text": [
- "Send message to EventBridge by using command at project root level - aws events put-events --entries file://SampleEvent.json",
- "Navigate to S3 bucket created by CDK and confirm message has saved at path {department}/{event message file}",
- "Please note: Firehose delivery stream buffer is configured for 60secs (default time), so please wait for 1-2 mins after event send command to get the message in S3 bucket"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy EventBridgeFirehoseS3Stack",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'EventBridgeFirehoseS3Stack')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Vikramsinha Patil",
- "image": "",
- "bio": "Cloud Application Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/vikramsinha-patil-834a4b2b",
- "twitter": ""
- }
- ]
-}
diff --git a/eventbridge-global-endpoints-cdk/example-pattern.json b/eventbridge-global-endpoints-cdk/example-pattern.json
deleted file mode 100644
index cd3140ae6..000000000
--- a/eventbridge-global-endpoints-cdk/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Event Bridge Global Endpoints - Active Acttive",
- "description": "Creates an EventBridge Global Endpoint and all the infra needed to set it up",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern showscase the usage of EventBridge Global Endpoints. It will create 2 event buses in two regions (a main region and secondary region) and the buses each bus is connected to a CloudWatch Log. The client that is a Lambda function will put messages to the Global Endpoint and depending on the health of the main region bus it will shift the traffic to the correct region. This pattern also creates an alarm and health check to validate the health of the main region event bus."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbrigde-global-endpoint-cdk",
- "templateURL": "serverless-patterns/eventbrigde-global-endpoint-cdk/cdk",
- "projectFolder": "eventbrigde-global-endpoint-cdk",
- "templateFile": "lib/global-endpoint-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Global Event Driven Applications",
- "link": "https://blog.marcia.dev/global-event-driven-applications"
- },
- {
- "text": "EventBridge Global Endpoints docs",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-global-endpoints.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy --all"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy --all
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "link-to-your-photo.jpg",
- "bio": "Your bio.",
- "linkedin": "linked-in-ID",
- "twitter": "twitter-handle"
- }
- ]
-}
diff --git a/eventbridge-lambda-dotnet-cdk/example-pattern.json b/eventbridge-lambda-dotnet-cdk/example-pattern.json
deleted file mode 100644
index 668ac2dfd..000000000
--- a/eventbridge-lambda-dotnet-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "EventBridge to Lambda",
- "description": "Create an EventBridge rule that invokes a Lambda function.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains a sample AWS CDK template for invoking AWS Lambda from an Amazon EventBridge Rule.",
- "The EventBridge rule filters the events based upon the defined criteria. When matching events are sent to EventBridge that trigger the rule, they are delivered as a JSON event payload to the Lambda function.",
- "It also creates a CloudWatch Log Group for the Lambda function for observation of incoming events, with a retention and removal policy."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-lambda-dotnet-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-lambda-dotnet-cdk/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Amir Khairalomoum",
- "image": "https://d2908q01vomqb2.cloudfront.net/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59/2021/06/29/Amir-Khairalomoum.jpg",
- "bio": "Amir is a Sr. Solutions Architect at AWS. He supports customers in their digital transformation and their cloud journey to AWS. He is passionate about serverless technologies.",
- "linkedin": "amir-khairalomoum",
- "twitter": "@mrark1361"
- }
- ]
-}
diff --git a/eventbridge-lambda-rust/example-pattern.json b/eventbridge-lambda-rust/example-pattern.json
deleted file mode 100644
index de46af9e8..000000000
--- a/eventbridge-lambda-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon EventBridge to AWS Lambda",
- "description": "This template deploys a Lambda function that is triggered by an EventBridge rule. In this example, the rule filters for specific attributes in the event before invoking the function.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys a Lambda function that is triggered by an EventBridge rule. In this example, the rule filters for specific attributes in the event before invoking the function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-lambda-rust",
- "templateURL": "serverless-patterns/eventbridge-lambda-rust",
- "projectFolder": "eventbridge-lambda-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge",
- "link": "https://aws.amazon.com/eventbridge/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/eventbridge-lambda-terraform/example-pattern.json b/eventbridge-lambda-terraform/example-pattern.json
deleted file mode 100644
index 75daf66a3..000000000
--- a/eventbridge-lambda-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "AWS Lambda to Amazon EventBridge",
- "description": "This pattern creates a Lambda function that publishes an event to EventBridge.",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys a Lambda function that is triggered by an EventBridge rule. In this example, the rule filters for specific attributes in the event before invoking the function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-lambda-terraform",
- "templateURL": "serverless-patterns/eventbridge-lambda-terraform",
- "projectFolder": "eventbridge-lambda-terraform",
- "templateFile": "eventbridge-lambda-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk/example-pattern.json b/eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk/example-pattern.json
deleted file mode 100644
index 3287e262f..000000000
--- a/eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk/example-pattern.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "title": "EventBridge Pipe targets IoT Core Topic",
- "description": "Create an EventBridge pipe that publish data to an IoT Core topic",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "services": {
- "from": "eventbridge",
- "to": "iot-data"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use an AWS EventBridge Pipe to publish data to an AWS IoT Core Topic. This pattern is leveraging the native integration between the following services: DynamoDB Stream -> EventBridge Pipes -> Api Gateway -> IoT Core.",
- "This pattern deploys one DynamoDB Table, one EventBridge Pipe and one Api Gateway REST Api."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk",
- "templateURL": "serverless-patterns/eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk",
- "projectFolder": "eventbridge-pipes-ddb-stream-apigateway-iot-core-cdk",
- "templateFile": "cdk/lib/cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs"
- },
- {
- "text": "AWS IoT HTTPS",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/http.html"
- },
- {
- "text": "AWS Solutions Constructs for API Gateway integration to IoT Core",
- "link": "https://github.com/awslabs/aws-solutions-constructs/tree/58e726ff2050a4d6ff4734a6b556e1f81d97e9aa/source/patterns/%40aws-solutions-constructs/aws-apigateway-iot"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Mohamad Soufan",
- "image": "https://pbs.twimg.com/profile_images/1467593280896450562/jRZ4fMWb_400x400.jpg",
- "bio": "Mohamad is an AWS 5x Certified Cloud Enthusiast who love building solutions with focus on Serverless and Networking. (Majd's twin brother)",
- "linkedin": "/mohamad-soufan",
- "twitter": "@MohamadSoufan4"
- },
- {
- "name": "Majd Soufan",
- "image": "https://pbs.twimg.com/profile_images/1467263476473090048/JmklQbC8_400x400.jpg",
- "bio": "Majd is an AWS 5x Certified Cloud Enthusiast who love building solutions with focus on Serverless and Database. (Mohamad's twin brother)",
- "linkedin": "/majd-soufan",
- "twitter": "@Majd95RF"
- }
- ]
-}
diff --git a/eventbridge-pipes-ddb-stream-lambda-sfn-enrich/example-pattern.json b/eventbridge-pipes-ddb-stream-lambda-sfn-enrich/example-pattern.json
deleted file mode 100644
index 0a5c18b47..000000000
--- a/eventbridge-pipes-ddb-stream-lambda-sfn-enrich/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "DynamoDB Stream to AWS Lambda with Step Function Event Enrichment",
- "description": "This pattern triggers a Lambda function from a DynamoDB Stream with Step functions enrichment in between them using EventBridge Pipes.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "DynamoDB Streams events are sent to Step Function workflow, the workflow enriches the event and forwards them onto the Lambda function"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-ddb-stream-lambda-sfn-enrich",
- "templateURL": "serverless-patterns/eventbridge-pipes-ddb-stream-lambda-sfn-enrich",
- "projectFolder": "eventbridge-pipes-ddb-stream-lambda-sfn-enrich",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided" ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sayan Moitra",
- "image": "./smoitra.png",
- "bio": "Sayan is a Solutions Architect at Amazon Web Services based in India.",
- "linkedin": "sayanmoitra"
- }
- ]
-}
diff --git a/eventbridge-pipes-ddbstream-to-eventbridge-suffix-matching/example-pattern.json b/eventbridge-pipes-ddbstream-to-eventbridge-suffix-matching/example-pattern.json
deleted file mode 100644
index 6e9756ae4..000000000
--- a/eventbridge-pipes-ddbstream-to-eventbridge-suffix-matching/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "DynamoDB stream to EventBridge Bus using EventBridge Pipes using suffix matching",
- "description": "Raise events from changes in DynamoDB using EventBridge Pipes and suffix filtering.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["EventBridge Pipe used to connect DynamoDB stream (new and old images) directly into an EventBridge bus with custom source and detail-type. Only items that match the suffix rule are forwarded on the bus"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-ddbstream-to-eventbridge-suffix-matching",
- "templateURL": "serverless-patterns/eventbridge-pipes-ddbstream-to-eventbridge-suffix-matching",
- "projectFolder": "",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Visuals",
- "link": "https://serverlessland.com/serverless/visuals/eventbridge"
- },
- {
- "text": "Suffix filtering",
- "link": "https://serverlessland.com/serverless/visuals/eventbridge/suffix-filtering"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- }
- ]
- },
- "deploy": {
- "text": ["Deploy the stack: sam deploy
."]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-ddbstream-to-eventbridge/example-pattern.json b/eventbridge-pipes-ddbstream-to-eventbridge/example-pattern.json
deleted file mode 100644
index bd8e0438b..000000000
--- a/eventbridge-pipes-ddbstream-to-eventbridge/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "DynamoDB Stream to EventBridge Bus using EventBridge Pipes",
- "description": "This pattern uses EventBridge pipe to connect DynamoDB Stream directly into EventBridge",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["EventBridge Pipe used to connect DynamoDB stream (new and old images) directly into EventBridge with custom source and detail-type"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/maineventbridge-pipes-ddbstream-to-eventbridge",
- "templateURL": "serverless-patternseventbridge-pipes-ddbstream-to-eventbridge",
- "projectFolder": "",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- }
- ]
- },
- "deploy": {
- "text": ["Deploy the stack: sam deploy
."]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-ddbstream-with-filters-to-eventbridge/example-pattern.json b/eventbridge-pipes-ddbstream-with-filters-to-eventbridge/example-pattern.json
deleted file mode 100644
index 6654142a2..000000000
--- a/eventbridge-pipes-ddbstream-with-filters-to-eventbridge/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Change data capture events from DynamoDB to EventBridge Bus using filters",
- "description": "This pattern uses CDC events from DynamoDB stream into EventBridge using filters and multiple EventBridge pipes",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Three EventBridge pipes are connected to the same DynamoDB stream. Each pipe filters out changes and raises CDC events into EventBridge"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/eventbridge-pipes-ddbstream-with-filters-to-eventbridge",
- "templateURL": "serverless-patterns/eventbridge-pipes-ddbstream-with-filters-to-eventbridge",
- "projectFolder": "eventbridge-pipes-ddbstream-with-filters-to-eventbridge",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-dynamodbstream-sns/example-pattern.json b/eventbridge-pipes-dynamodbstream-sns/example-pattern.json
deleted file mode 100644
index 4a0709e83..000000000
--- a/eventbridge-pipes-dynamodbstream-sns/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "DynamoDB Stream to Amazon SNS with Amazon EventBridge Pipes",
- "description": "This pattern uses Amazon EventBridge Pipes to connect DynamoDB Stream directly to Amazon SNS with filtering option.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Amazon EventBridge Pipes used to connect DynamoDB stream directly to Amazon SNS with filtering option."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-dynamodbstream-sns",
- "templateURL": "serverless-patterns/eventbridge-pipes-dynamodbstream-sns",
- "projectFolder": "eventbridge-pipes-dynamodbstream-sns",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided" ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sayan Moitra",
- "image": "./smoitra.png",
- "bio": "Associate Solutions Architect, CSC"
- }
- ]
-}
diff --git a/eventbridge-pipes-dynamodbstream-to-sqs-cdk-python/example-pattern.json b/eventbridge-pipes-dynamodbstream-to-sqs-cdk-python/example-pattern.json
deleted file mode 100644
index ced3e9bf1..000000000
--- a/eventbridge-pipes-dynamodbstream-to-sqs-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "title": "DynamoDB Stream to SQS queue using EventBridge Pipes with CDK Python",
- "description": "Simple pattern that sends events from DynamoDB Stream to SQS using EventBridge Pipes. Implemented with CDK using Python. ",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Whenever there is an change in a item of the DynamoDB table, a message about the change and item will be available in DynamoDB Stream.",
- "EventBridge Pipe polls these messages in DynamoDB stream. When the messages are available, Pipe first filter them based on the filter criteria provided. Then, the matched messages are sent to the target SQS."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-dynamodbstream-to-sqs-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-pipes-dynamodbstream-to-sqs-cdk-python",
- "projectFolder": "eventbridge-pipes-dynamodbstream-to-sqs-cdk-python",
- "templateFile": "eventbridge-pipes-dynamodbstream-to-sqs-cdk-python/eventbridge_pipes_dynamodbstream_to_sqs_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Pipes Documentation for CDK v2 Python",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_pipes/CfnPipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-pipes-kinesis-to-kinesis-with-filtering/example-pattern.json b/eventbridge-pipes-kinesis-to-kinesis-with-filtering/example-pattern.json
deleted file mode 100644
index 5c2569e59..000000000
--- a/eventbridge-pipes-kinesis-to-kinesis-with-filtering/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Kinesis to Kinesis with filtering using EventBridge Pipes",
- "description": "This pattern will connect Kinesis streams together with EventBridge Pipes. The source stream is filtered into multiple Kinesis streams downstream.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Kinesis stream is configured as the pipe source, and filters are created to filter records to downstream kinesis streams. This pattern allows you to filter kinesis streams into other kinesis streams."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/eventbridge-pipes-kinesis-to-kinesis-with-filtering",
- "templateURL": "serverless-patterns/eventbridge-pipes-kinesis-to-kinesis-with-filtering",
- "projectFolder": "eventbridge-pipes-kinesis-to-kinesis-with-filtering",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-msk-iam-auth-to-lambda/example-pattern.json b/eventbridge-pipes-msk-iam-auth-to-lambda/example-pattern.json
deleted file mode 100644
index abee6a823..000000000
--- a/eventbridge-pipes-msk-iam-auth-to-lambda/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "EventBridge Pipes with IAM Authentication enabled Amazon MSK cluster as source and Lambda function as target",
- "description": "This pattern shows how to use EventBridge Pipes with data coming in from Amazon MSK cluster with IAM Authentication enabled and process these messages using Lambda function",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Amazon MSK with IAM Auth is configured as the pipe source with Lambda function. This patterns allows EventBridge pipes to integrate with Amazon MSK deployed in a private subnet and Lambda function to process the messages"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-msk-iam-auth-to-lambda",
- "templateURL": "serverless-patterns/eventbridge-pipes-msk-iam-auth-to-lambda",
- "projectFolder": "eventbridge-pipes-msk-iam-auth-to-lambda",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Pawan Puthran",
- "image": "https://media.licdn.com/dms/image/C4E03AQEB6pHc64s7_w/profile-displayphoto-shrink_400_400/0/1596015570736?e=1681948800&v=beta&t=P5_awh6zx-dBEXCSI94ksIjOcKEtknqyQkvQjMGTnzc",
- "bio": "Principal Serverless Specialist at AWS",
- "linkedin": "https://www.linkedin.com/in/pawan-puthran-a4659226/",
- "twitter": "@pawanputhran"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/eventbridge-pipes-msk-to-lambda/example-pattern.json b/eventbridge-pipes-msk-to-lambda/example-pattern.json
deleted file mode 100644
index 87a86fb74..000000000
--- a/eventbridge-pipes-msk-to-lambda/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "EventBridge Pipes with Amazon MSK as source and Lambda function as target",
- "description": "This pattern shows how to use EventBridge Pipes with data coming in from Amazon MSK and process these messages using Lambda function",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Amazon MSK is configured as the pipe source with Lambda function. This patterns allows EventBridge pipes to integrate with Amazon MSK deployed in a private subnet and Lambda function to process the messages"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-msk-to-lambda",
- "templateURL": "serverless-patterns/eventbridge-pipes-msk-to-lambda",
- "projectFolder": "eventbridge-pipes-msk-to-lambda",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Pawan Puthran",
- "image": "https://media.licdn.com/dms/image/C4E03AQEB6pHc64s7_w/profile-displayphoto-shrink_400_400/0/1596015570736?e=1681948800&v=beta&t=P5_awh6zx-dBEXCSI94ksIjOcKEtknqyQkvQjMGTnzc",
- "bio": "Principal Serverless Specialist at AWS",
- "linkedin": "https://www.linkedin.com/in/pawan-puthran-a4659226/",
- "twitter": "@pawanputhran"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/eventbridge-pipes-splitter-pattern/example-pattern.json b/eventbridge-pipes-splitter-pattern/example-pattern.json
deleted file mode 100644
index 46cd4a80f..000000000
--- a/eventbridge-pipes-splitter-pattern/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "DynamoDB Stream to EventBridge using Spitter pattern",
- "description": "This pattern takes a change data capture event from DynamoDB and splits it into multiple events into EventBridge.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["Insert happens into DynamoDB table (source), EventBridge pipes then splits the event into three events EventBridge (target)."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-splitter-pattern",
- "templateURL": "serverless-patterns/eventbridge-pipes-splitter-pattern",
- "projectFolder": "eventbridge-pipes-splitter-pattern",
- "templateFile": "cdk/lib/cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-enrich-with-api-destination/example-pattern.json b/eventbridge-pipes-sqs-enrich-with-api-destination/example-pattern.json
deleted file mode 100644
index 899fa019d..000000000
--- a/eventbridge-pipes-sqs-enrich-with-api-destination/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "Enrich SQS Message data with Amazon EventBridge Pipes using API destinations",
- "description": "This pattern shows how to use EventBridge Pipes to enrich SQS message data using API destinations and then send response to pipe target.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The sample project demonstrates how to use Amazon EventBridge Pipes to enrich data using API destinations before sending it to the target. The pattern uses SQS message as a source to EventBridge Pipe, Pipe enriches the data by calling an API destination using input from the SQS message. Pipe extracts data from SQS message and sends it as path parameter(s) to API. Response from API is sent to an EventBridge Pipe target of Amazon CloudWatch logs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-enrich-with-api-destination",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-enrich-with-api-destination",
- "projectFolder": "eventbridge-pipes-sqs-enrich-with-api-destination",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Sachin Doshi",
- "bio": "AWS Application Architect",
- "linkedin": "https://www.linkedin.com/in/sachin1doshi/"
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-enrich-with-sfdc/example-pattern.json b/eventbridge-pipes-sqs-enrich-with-sfdc/example-pattern.json
deleted file mode 100644
index f505ec34d..000000000
--- a/eventbridge-pipes-sqs-enrich-with-sfdc/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Enrich SQS message data with EventBridge Pipes using Salesforce via API Destination",
- "description": "This pattern shows how to use EventBridge Pipes to enrich SQS message data using Salesforce via API destination and then send response to Pipe target.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The sample project demonstrates how to use Amazon EventBridge Pipes to enrich data using Salesforce via API destination before sending it to the target. The pattern uses SQS message as a source to EventBridge Pipe, Pipe enriches the data by calling the Salesforce API via an API destination using input from the SQS message. Pipe extracts data from SQS message and sends it as path parameter(s) to API. Response from API is sent to an EventBridge Pipe target of Amazon CloudWatch logs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-enrich-with-sfdc",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-enrich-with-sfdc",
- "projectFolder": "eventbridge-pipes-sqs-enrich-with-sfdc",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Rohan Mehta",
- "image": "https://phonetool.amazon.com/users/merohan",
- "bio": "Cloud Application Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/rohan-mehta-dev/",
- "twitter": "@rohanmehta_dev"
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-lambda-api-destination/example-pattern.json b/eventbridge-pipes-sqs-lambda-api-destination/example-pattern.json
deleted file mode 100644
index a4efaad3d..000000000
--- a/eventbridge-pipes-sqs-lambda-api-destination/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon SQS to Amazon API Gatewy using Amazon Eventbridge Pipes with enrichment",
- "description": "Create an EventBridge pipe to simplify process of pushing items to Amazon DynamoDB",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use EventBridge pipe to push and modify messages before sending it to DynamoDB.",
- "This pattern is leveraging EventBridge pipe to first integrate 3 services together, simplifying the process by reducing the need for integration code.",
- "Here, SQS is the EventBridge source and Lambda to enrich the data, before pushing to the target API Destination that invokes an API Gateway."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/pjx98/serverless-patterns/tree/pjx98-feature-eventbridge-pipes-sqs-lambda-api-destination/eventbridge-pipes-sqs-lambda-api-destination",
- "templateURL": "https://github.com/pjx98/serverless-patterns/blob/pjx98-feature-eventbridge-pipes-sqs-lambda-api-destination/eventbridge-pipes-sqs-lambda-api-destination/template.yaml",
- "projectFolder": "eventbridge-pipes-sqs-lambda-api-destination",
- "templateFile": "eventbridge-pipes-sqs-lambda-api-destination/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete"
- ]
- },
- "authors": [
- {
- "name": "Peh Jing Xiang",
- "image": "profile-pic.jpg",
- "bio": "Jing Xiang is an Associate Solutions Architect based in Singapore",
- "linkedin": "jing-xiang-peh"
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-aws-batch-with-filters/example-pattern.json b/eventbridge-pipes-sqs-to-aws-batch-with-filters/example-pattern.json
deleted file mode 100644
index 32ec6d7fa..000000000
--- a/eventbridge-pipes-sqs-to-aws-batch-with-filters/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "SQS to AWS Batch Job Queue using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers AWS Batch Job Queue directly with optional filtering supported.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "SQS queue is polled and messages are sent to AWS Batch Job Queue. SQS messages are filtered before reaching AWS Batch Job Queue, and custom events in AWS Batch Jobs are raised."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-aws-batch-with-filters",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-aws-batch-with-filters",
- "projectFolder": "eventbridge-pipes-sqs-to-aws-batch-with-filters",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "API for PipeTargetBatchJobParameters",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/pipes-reference/API_PipeTargetBatchJobParameters.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Sayan Moitra",
- "image": "./smoitra.png",
- "bio": "Sayan is a Solutions Architect working with Amazon Web Services.",
- "linkedin": "sayanmoitra"
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet/example-pattern.json b/eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 1d40a17c0..000000000
--- a/eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "SQS to EventBridge Bus using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers EventBridge events directly with optional filtering supported.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and messages are sent to EventBridge. Custom events in EventBridge are raised."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet",
- "projectFolder": "eventbridge-pipes-sqs-to-eventbridge-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "James Eastham",
- "bio": "Senior Cloud Architect at AWS focusing on .NET and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-eventbridge-cdk-python/example-pattern.json b/eventbridge-pipes-sqs-to-eventbridge-cdk-python/example-pattern.json
deleted file mode 100644
index d2a774919..000000000
--- a/eventbridge-pipes-sqs-to-eventbridge-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "title": "SQS to EventBridge Bus using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers EventBridge events directly with optional filtering supported.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and messages are sent to EventBridge. Custom events in EventBridge are raised."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-eventbridge-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-eventbridge-cdk-python",
- "projectFolder": "eventbridge-pipes-sqs-to-eventbridge-cdk-python",
- "templateFile": "eventbridge-pipes-sqs-to-eventbridge-cdk-python/eventbridge_pipes_sqs_to_eventbridge_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Pipes Documentation for CDK v2 Python",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_pipes/CfnPipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-pipes-sqs-to-eventbridge-cdk/example-pattern.json b/eventbridge-pipes-sqs-to-eventbridge-cdk/example-pattern.json
deleted file mode 100644
index 7e1acfc4e..000000000
--- a/eventbridge-pipes-sqs-to-eventbridge-cdk/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "SQS to EventBridge Bus using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers EventBridge events directly with optional filtering supported.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and messages are sent to EventBridge. Custom events in EventBridge are raised."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-eventbridge-cdk",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-eventbridge-cdk",
- "projectFolder": "eventbridge-pipes-sqs-to-eventbridge-cdk",
- "templateFile": "cdk/lib/eventbridge-pipes-sqs-to-eventbridge-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-eventbridge-with-filters/example-pattern.json b/eventbridge-pipes-sqs-to-eventbridge-with-filters/example-pattern.json
deleted file mode 100644
index dff37f395..000000000
--- a/eventbridge-pipes-sqs-to-eventbridge-with-filters/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "SQS to EventBridge Bus using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers EventBridge events directly with optional filtering supported.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and messages are sent to EventBridge. SQS messages are filtered before reaching EventBridge, and custom events in EventBridge are raised."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-eventbridge-with-filters",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-eventbridge-with-filters",
- "projectFolder": "eventbridge-pipes-sqs-to-eventbridge-with-filters",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment/example-pattern.json b/eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment/example-pattern.json
deleted file mode 100644
index e12586904..000000000
--- a/eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "SQS to Lambda with Step Functions event enrichment",
- "description": "This pattern triggers a Lambda function from an SQS queue with Step functions enrichment inbetween them using EventBridge Pipes",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and messages are sent to Step Function workflow, the workflow enriches the event and forwards them onto the Lambda function"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment",
- "projectFolder": "eventbridge-pipes-sqs-to-lambda-with-stepfunction-enrichment",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-multiple-sqs/example-pattern.json b/eventbridge-pipes-sqs-to-multiple-sqs/example-pattern.json
deleted file mode 100644
index dc52f65d5..000000000
--- a/eventbridge-pipes-sqs-to-multiple-sqs/example-pattern.json
+++ /dev/null
@@ -1,70 +0,0 @@
-{
- "title": "Split SQS Messages into multiple SQS queus using EventBridge Pipe with CDK Python",
- "description": "Simple pattern that split messages in a SQS queue into multiple SQS queues using EventBridge Pipe and Event Bus. Implemented using CDK using Python. ",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "EventBridge Pipe polls messages in source SQS queue. Then using enrichment Lambda function, it extract the original payload.",
- "Then the messages is sent to the Event Bus. Two SQS queues are set as targets and based on the 'type' value on the orignial message, it will be delivered to the respective target queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-multiple-sqs",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-multiple-sqs",
- "projectFolder": "eventbridge-pipes-sqs-to-multiple-sqs",
- "templateFile": "eventbridge-pipes-sqs-to-multiple-sqs/eventbridge_pipes_sqs_to_multiple_sqs_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Pipes Documentation for CDK v2 Python",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_pipes/CfnPipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet/example-pattern.json b/eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet/example-pattern.json
deleted file mode 100644
index 45c72163f..000000000
--- a/eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "SQS to SQS with EventBridge Pipes and Lambda Enrichment",
- "description": "This pattern demonstrates sending SQS messages to another SQS queue with a Lambda function to enrich the data.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled, the Lambda enricher is invoked and the response of the Lambda function is passed to SQS."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet",
- "projectFolder": "eventbridge-pipes-sqs-to-sqs-with-lambda-enrichment-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "James Eastham",
- "bio": "Senior Cloud Architect at AWS focusing on .NET and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-step-functions-cdk-dotnet/example-pattern.json b/eventbridge-pipes-sqs-to-step-functions-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 486d726ee..000000000
--- a/eventbridge-pipes-sqs-to-step-functions-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "SQS to Step Function Workflow using EventBridge Pipes",
- "description": "This pattern uses SQS and triggers a Step Function workflow directly with optional filtering supported.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["SQS queue is polled and a Step Functions workflow execution is started for each batch of messages."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-step-functions-cdk-dotnet",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-step-functions-cdk-dotnet",
- "projectFolder": "eventbridge-pipes-sqs-to-step-functions-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "James Eastham",
- "bio": "Senior Cloud Architect at AWS focusing on .NET and Serverless."
- }
- ]
-}
diff --git a/eventbridge-pipes-sqs-to-stepfunctions-cdk-python/example-pattern.json b/eventbridge-pipes-sqs-to-stepfunctions-cdk-python/example-pattern.json
deleted file mode 100644
index 4af1a792a..000000000
--- a/eventbridge-pipes-sqs-to-stepfunctions-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "title": "SQS to trigger Step Function using EventBridge Pipe with CDK Python",
- "description": "Simple pattern that triggers Step Function execution from SQS using Amazon EventBridge Pipe and CDK using Python. ",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "EventBridge Pipe polls SQS queue and initiate Step Function execution per message received."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-stepfunctions-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-stepfunctions-cdk-python",
- "projectFolder": "eventbridge-pipes-sqs-to-stepfunctions-cdk-python",
- "templateFile": "eventbridge-pipes-sqs-to-stepfunctions-cdk-python/eventbridge_pipes_sqs_to_stepfunctions_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Pipes Documentation for CDK v2 Python",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_pipes/CfnPipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-pipes-sqs-to-stepfunctions/example-pattern.json b/eventbridge-pipes-sqs-to-stepfunctions/example-pattern.json
deleted file mode 100644
index d797687d5..000000000
--- a/eventbridge-pipes-sqs-to-stepfunctions/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "SQS to Step Functions with EventBridge Pipes",
- "description": "This pattern shows how to use EventBridge Pipes to launch a StepFunctions state machine with a message coming from SQS Queue.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "EventBridge Pipe used to poll a SQS queue and use the message to launch a StepFunctions state machine"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-pipes-sqs-to-stepfunctions",
- "templateURL": "serverless-patterns/eventbridge-pipes-sqs-to-stepfunctions",
- "projectFolder": "eventbridge-pipes-sqs-to-stepfunctions",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Pipes Documentation",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html"
- },
- {
- "text": "Cloudformation API for Pipes",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html"
- },
- {
- "text": "Video explaining EventBridge Pipes",
- "link": "https://www.youtube.com/watch?v=xXGXCOc3cBs&t=1037s"
- },
- {
- "text": "Learn more about event-driven architecture",
- "link": "https://serverlessland.com/event-driven-architecture"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Roman Boiko",
- "image": "https://avatars.githubusercontent.com/u/856463?s=400&u=ace30327876b4d197d0ca3c94dee2e679fb34801&v=4",
- "bio": "AWS Serverless Specialist Solutions Architect"
- }
- ]
-}
diff --git a/eventbridge-schedule-dynamic-with-auto-deletion/example-pattern.json b/eventbridge-schedule-dynamic-with-auto-deletion/example-pattern.json
deleted file mode 100644
index 125d9c1f1..000000000
--- a/eventbridge-schedule-dynamic-with-auto-deletion/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Dynamic schedules with auto deletion with Amazon EventBridge Scheduler",
- "description": "Event-driven pattern that creates three schedules when records get added to a DynamoDB table. These schedules trigger an email service and are automatically deleted.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When a new user signs up a record is added into the DynamoDB table. Using EventBridge pipes, changes are captured and transformed into an EventBridge event. Downstream consumers listen and create schedules for each user that automatically delete."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-dynamic-with-auto-deletion",
- "templateURL": "serverless-patterns/eventbridge-schedule-dynamic-with-auto-deletion",
- "projectFolder": "eventbridge-schedule-dynamic-with-auto-deletion",
- "templateFile": "src/src/schedule-creator/index.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Automatically delete schedules upon completion with Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/automatically-delete-schedules-upon-completion-with-amazon-eventbridge-scheduler/"
- },
- {
- "text": "EventBridge Visuals",
- "link": "https://serverlessland.com/serverless/visuals/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-ecs-cdk-go/example-pattern.json b/eventbridge-schedule-ecs-cdk-go/example-pattern.json
deleted file mode 100644
index be8074186..000000000
--- a/eventbridge-schedule-ecs-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to Run Amazon Elastic Container Service Task",
- "description": "Simple pattern that create an Amazon EventBridge Scheduler to run task in Amazon Elastic Container Service cluster every 15 minutes.",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to use Amazon EventBridge Scheduler to run task in Amazon Elastic Container Service cluster every 15 minutes and deployed using the AWS CDK for Go."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-ecs-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-ecs-cdk-go",
- "projectFolder": "eventbridge-schedule-ecs-cdk-go",
- "templateFile": "eventbridge-schedule-ecs-cdk-go/eventbridge-schedule-ecs-cdk-go.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with the AWS CDK in Go",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-go.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Getting Started with Amazon EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon ECS",
- "link": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Stop all running tasks in ECS Cluster",
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Hoi Wing Chan",
- "bio": "Hoi Wing is a Technical Account Manager at Amazon Web Services with a background of software development and architecture.",
- "linkedin": "wing-chan-0943a344"
- }
- ]
-}
diff --git a/eventbridge-schedule-ecs-cdk-java/example-pattern.json b/eventbridge-schedule-ecs-cdk-java/example-pattern.json
deleted file mode 100644
index 42a7ef9a5..000000000
--- a/eventbridge-schedule-ecs-cdk-java/example-pattern.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "title": "EventBridge Scheduler to Run ECS Task",
- "description": "Simple pattern that run task in Amazon Elastic Container Service cluster every 15 minutes.",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to use EventBridge Scheduler to run task in Amazon Elastic Container Service cluster every 15 minutes and deployed using the AWS CDK for Java."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-ecs-cdk-java",
- "templateURL": "serverless-patterns/eventbridge-schedule-ecs-cdk-java",
- "projectFolder": "eventbridge-schedule-to-sns-publish-cdk-java",
- "templateFile": "eventbridge-schedule-ecs-cdk-java/src/main/java/com/myorg/EventbridgeScheduleEcsCdkJavaStack.java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with the AWS CDK in Java",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-java.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon ECS",
- "link": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Stop all running tasks in ECS Cluster",
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Hoi Wing Chan",
- "bio": "Hoi Wing is a Technical Account Manager at Amazon Web Services with a background of software development and architecture.",
- "linkedin": "https://www.linkedin.com/in/wing-chan-0943a344"
- }
- ]
-}
diff --git a/eventbridge-schedule-ecs-terraform/example-pattern.json b/eventbridge-schedule-ecs-terraform/example-pattern.json
deleted file mode 100644
index b1206a76c..000000000
--- a/eventbridge-schedule-ecs-terraform/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to Amazon Elastic Container Service",
- "description": "Creates an EventBridge schedule to invoke an Amazon Elastic Container Service task every 5 minutes",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke an Amazon Elastic Container Service (ECS) task using EventBridge Scheduler and deployed with Terraform."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-ecs-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-ecs-terraform",
- "projectFolder": "eventbridge-schedule-ecs-terraform",
- "templateFile": "eventbridge-schedule-ecs-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon ECS",
- "link": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/getting-started.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
"
- ]
- },
- "authors": [
- {
- "name": "Rajdeep Banerjee",
- "image": "https://avatars.githubusercontent.com/u/106704318",
- "bio": "AWS Sr. Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/rajdeep-banerjee/"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-lambda-to-dynamodb/example-pattern.json b/eventbridge-schedule-lambda-to-dynamodb/example-pattern.json
deleted file mode 100644
index 530a73d09..000000000
--- a/eventbridge-schedule-lambda-to-dynamodb/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Eventbridge to Lambda to DynamoDB",
- "description": "This AWS CDK application demonstrates how to Schedule AWS Lambda to add items to DynamoDB.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses .NET as a programming language to create the entire AWS CDK stack."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-lambda-to-dynamodb",
- "projectFolder": "eventbridge-schedule-lambda-to-dynamodb",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-lambda-to-dynamodb/README.md",
- "templateURL": "serverless-patterns/eventbridge-schedule-lambda-to-dynamodb",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://avatars.githubusercontent.com/u/21244341?s=96&v=4",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- },
- {
- "name": "Vijai Anand Ramalingam",
- "image": "https://avatars.githubusercontent.com/u/83067978?v=4",
- "bio": "Vijai Anand Ramalingam ia an Application Developer - ISV at Amazon Web Services",
- "linkedin": "vijai-anand-ramalingam-77439736"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-remove-one-time-schedules/example-pattern.json b/eventbridge-schedule-remove-one-time-schedules/example-pattern.json
deleted file mode 100644
index 123c3af1d..000000000
--- a/eventbridge-schedule-remove-one-time-schedules/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "EventBridge Scheduler Sweaper: Remove one-time schedules after they run",
- "description": "Simple pattern to remove one-time schedules after 2 days of their execution.",
- "language": "TypeScript",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a schedule that is run every day at 00:00 that checks for one-time schedules. If any schedules are found it removes them"]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-remove-one-time-schedules",
- "templateURL": "serverless-patterns/eventbridge-schedule-remove-one-time-schedules",
- "projectFolder": "eventbridge-schedule-remove-one-time-schedules",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": ["sam build && sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-ssm-cdk-go/example-pattern.json b/eventbridge-schedule-ssm-cdk-go/example-pattern.json
deleted file mode 100644
index 02a2fe9d6..000000000
--- a/eventbridge-schedule-ssm-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "EventBridge Scheduler to Start State Manager Association Once",
- "description": "This pattern will create an EventBridge Scheduler to start State Manager Association once in AWS Systems Manager every 5 minutes.",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "An EventBridge Scheduler is created that start State Manager Association once in an AWS Systems Manager every 5 minutes.",
- "The demo Association will use an Automation Document \"AWS-DisablePublicAccessForSecurityGroup\" to revoke RDP and SSH public access in security group.",
- "Along with a scheduler, the CDK stack creates VPC, security group, association, IAM role and policy for Automation and EventBridge Scheduler to assume and start association."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-ssm-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-ssm-cdk-go",
- "projectFolder": "eventbridge-schedule-ssm-cdk-go",
- "templateFile": "eventbridge-schedule-ssm-cdk-go.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with the AWS CDK in Go",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-go.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with AWS Systems Manager",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/getting-started-launch-managed-instance.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Hoi Wing Chan",
- "bio": "Hoi Wing is a Technical Account Manager at Amazon Web Services with a background of software development and architecture.",
- "linkedin": "https://www.linkedin.com/in/wing-chan-0943a344"
- }
- ]
-}
diff --git a/eventbridge-schedule-ssm-cdk-java/example-pattern.json b/eventbridge-schedule-ssm-cdk-java/example-pattern.json
deleted file mode 100644
index 94c2a565f..000000000
--- a/eventbridge-schedule-ssm-cdk-java/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "EventBridge Scheduler to Start State Manager Association Once",
- "description": "This pattern will create an EventBridge Scheduler to start State Manager Association once in AWS Systems Manager every 5 minutes.",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "An EventBridge Scheduler is created that start State Manager Association once in an AWS Systems Manager every 5 minutes.",
- "The demo Association will use an Automation Document \"AWS-DisablePublicAccessForSecurityGroup\" to revoke RDP and SSH public access in security group.",
- "Along with a scheduler, the CDK stack creates VPC, security group, association, IAM role and policy for Automation and EventBridge Scheduler to assume and start association."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-ssm-cdk-java",
- "templateURL": "serverless-patterns/eventbridge-schedule-ssm-cdk-java",
- "projectFolder": "eventbridge-schedule-ssm-cdk-java",
- "templateFile": "eventbridge-schedule-ssm-cdk-java/src/main/java/com/myorg/EventbridgeScheduleSsmCdkJavaStack.java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with the AWS CDK in Java",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-java.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with AWS Systems Manager",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/getting-started-launch-managed-instance.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Hoi Wing Chan",
- "bio": "Hoi Wing is a Technical Account Manager at Amazon Web Services with a background of software development and architecture.",
- "linkedin": "https://www.linkedin.com/in/wing-chan-0943a344"
- }
- ]
-}
diff --git a/eventbridge-schedule-to-batch-terraform/example-pattern.json b/eventbridge-schedule-to-batch-terraform/example-pattern.json
deleted file mode 100644
index a8999772e..000000000
--- a/eventbridge-schedule-to-batch-terraform/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to AWS Batch",
- "description": "Schedule AWS Batch jobs using Amazon EventBridge Scheduler",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Amazon EventBridge Scheduler to schedule batch compute jobs with AWS Batch. This pattern leverages universal targets with EventBridge Scheduler to talk directly to Batch, which uses only JSON_based, structured language to define the implementation.",
- "This pattern deploys one VPC, EventBridge Scheduler Schedule, one Batch compute environment, Batch Job and Queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-batch-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-batch-terraform",
- "projectFolder": "eventbridge-schedule-to-batch-terraform",
- "templateFile": "eventbridge-schedule-to-batch-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/scheduler.html"
- },
- {
- "text": "AWS Batch",
- "link": "https://docs.aws.amazon.com/batch/latest/userguide/what-is-batch.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ian Lodge",
- "image": "https://avatars.githubusercontent.com/u/135351711?v=4",
- "bio": "Ian is a Solutions Architect at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/ian-lodge"
- }
- ]
-}
diff --git a/eventbridge-schedule-to-cloudwatch-terraform/example-pattern.json b/eventbridge-schedule-to-cloudwatch-terraform/example-pattern.json
deleted file mode 100644
index dd10219bc..000000000
--- a/eventbridge-schedule-to-cloudwatch-terraform/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to Amazon CloudWatch",
- "description": "Use EventBridge Scheduler to insert custom metric data into CloudWatch on a schedule",
- "language" : "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Amazon EventBridge Scheduler to publish your own metrics to CloudWatch on a schedule. This pattern leverages templated targets with EventBridge Scheduler to talk directly to CloudWatch using the PutEvents API operation.",
- "This pattern deploys an EventBridge Schedule and the required IAM resource for Scheduler to interact with CloudWatch."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-cloudwatch-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-cloudwatch-terraform",
- "projectFolder": "eventbridge-schedule-to-cloudwatch-terraform",
- "templateFile": "eventbridge-schedule-to-cloudwatch-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/scheduler.html"
- },
- {
- "text": "Publish custom metrics to Amazon CloudWatch",
- "link": "https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ian Lodge",
- "image": "https://avatars.githubusercontent.com/u/135351711?v=4",
- "bio": "Ian is a Solutions Architect at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/ian-lodge"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/eventbridge-schedule-to-ec2-cdk/example-pattern.json b/eventbridge-schedule-to-ec2-cdk/example-pattern.json
deleted file mode 100644
index d7aaefe00..000000000
--- a/eventbridge-schedule-to-ec2-cdk/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "EventBridge Scheduler to start and stop EC2 instances Monday to Friday",
- "description": "Simple pattern that starts and stops given EC2 instances based on time of day, timezone and days of week",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a scheulde that turns on instances at 7:00am and turns them off at 18:00pm Monday to Friday using Europe/London timezone."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-ec2-cdk",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-ec2-cdk",
- "projectFolder": "eventbridge-schedule-to-ec2-cdk",
- "templateFile": "cdk/lib/schedule-ec2-instances-start-and-stop-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-to-ec2-terraform/example-pattern.json b/eventbridge-schedule-to-ec2-terraform/example-pattern.json
deleted file mode 100644
index 98cb51b8c..000000000
--- a/eventbridge-schedule-to-ec2-terraform/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "EventBridge Scheduler to start and stop EC2 instances Monday to Friday",
- "description": "Simple pattern that starts and stops given EC2 instances based on time of day, timezone and days of week",
- "level": "300",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a schedule that turns on instances at 08:00 and turns them off at 17:00 Monday to Friday using the US/Eastern timezone."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-ec2-terrafrom",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-ec2-terraform",
- "projectFolder": "eventbridge-schedule-to-ec2-terraform",
- "templateFile": "main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ian Lodge",
- "image": "https://avatars.githubusercontent.com/u/135351711?v=4",
- "bio": "Ian is a Solutions Architect at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/ian-lodge"
- }
- ]
- }
-
diff --git a/eventbridge-schedule-to-eventbridge-cdk-python/example-pattern.json b/eventbridge-schedule-to-eventbridge-cdk-python/example-pattern.json
deleted file mode 100644
index 23b7af835..000000000
--- a/eventbridge-schedule-to-eventbridge-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "EventBridge Scheduler to raise EventBridge event every 5 minutes with CDK Python",
- "description": "Simple pattern that rasies an EventBridge event (Lambda as target) every 5 minutes using Amazon EventBridge Scheduler and CDK using Python. ",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a scheulde that runs every 5 minutes to raise an EventBridge event. Additionally a Labmda function is configured as EventBrige rule target."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-eventbridge-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-eventbridge-cdk-python",
- "projectFolder": "eventbridge-schedule-to-eventbridge-cdk-python",
- "templateFile": "eventbridge-schedule-to-eventbridge-cdk-python/eventbridge_schedule_to_eventbridge_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- },
- {
- "text": "Scheduler Documentation for CDK v2 Python",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk.aws_scheduler/CfnSchedule.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-schedule-to-eventbridge-cdk/example-pattern.json b/eventbridge-schedule-to-eventbridge-cdk/example-pattern.json
deleted file mode 100644
index 1072505f9..000000000
--- a/eventbridge-schedule-to-eventbridge-cdk/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "EventBridge Scheduler to raise EventBridge event every 5 minutes with CDK",
- "description": "Simple pattern that rasies an EventBridge event every 5 minutes using Amazon EventBridge Scheduler and CDK",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a scheulde that runs every 5 minutes to raise an EventBridge event."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-eventbridge-cdk",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-eventbridge-cdk",
- "projectFolder": "eventbridge-schedule-to-eventbridge-cdk",
- "templateFile": "cdk/lib/eventbridge-scheduler-into-eventbridge-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-to-eventbridge-terraform/example-pattern.json b/eventbridge-schedule-to-eventbridge-terraform/example-pattern.json
deleted file mode 100644
index 9f75f8a7e..000000000
--- a/eventbridge-schedule-to-eventbridge-terraform/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to Amazon EventBridge",
- "description": "Use EventBridge Scheduler to send custom events to EventBridge on a schedule",
- "language": "",
- "level": "300",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project shows how to use Amazon EventBridge Scheduler to send custom events to Amazon EventBridge on a schedule. This pattern uses templated targets with EventBridge Scheduler to talk directly to EventBridge using the PutEvents API operation.",
- "The pattern is deployed using Terraform to create the EventBridge Scheduler, EventBridge bus and rules, as well as the IAM resources required for Scheduler to interact with EventBridge and CloudWatch."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-eventbridge-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-eventbridge-terraform",
- "projectFolder": "eventbridge-schedule-to-eventbridge-terraform",
- "templateFile": main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/scheduler.html"
- },
- {
- "text": "Send custom events to Amazon EventBridge",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
."
- ]
- },
- "authors": [
- {
- "name": "Ian Lodge",
- "image": "https://avatars.githubusercontent.com/u/135351711?v=4",
- "bio": "Ian is a Solutions Architect at Amazon Web Services based in the US.",
- "linkedin": "https://www.linkedin.com/in/ian-lodge"
- }
- ]
- }
-
diff --git a/eventbridge-schedule-to-lambda-cdk-go/example-pattern.json b/eventbridge-schedule-to-lambda-cdk-go/example-pattern.json
deleted file mode 100644
index 45d94656a..000000000
--- a/eventbridge-schedule-to-lambda-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to AWS Lambda",
- "description": "Creates an EventBridge schedule to invoke a Go based Lambda function every 5 minutes",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke a Go based Lambda function using EventBridge Scheduler and deployed with the AWS CDK for Go."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-cdk-go",
- "projectFolder": "eventbridge-schedule-to-lambda-cdk-go",
- "templateFile": "eventbridge-schedule-to-lambda-cdk-go/eventbridge-schedule-to-lambda-cdk-go.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Building Lambda functions with Go",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-golang.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
"
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
- }
diff --git a/eventbridge-schedule-to-lambda-cdk-java/example-pattern.json b/eventbridge-schedule-to-lambda-cdk-java/example-pattern.json
deleted file mode 100644
index 142331a08..000000000
--- a/eventbridge-schedule-to-lambda-cdk-java/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to Lambda",
- "description": "Creates an EventBridge schedule to run a Lambda every 5 minutes",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to use Amazon EventBridge Scheduler with Lambda to invoke a function on a schedule. This pattern uses the rate type schedule to run the Lambda function every 5 minutes.",
- "This deploys one EventBridge rate based schedule and one Java 11 based Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-cdk-java",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-cdk-java",
- "projectFolder": "eventbridge-schedule-to-lambda-cdk-java",
- "templateFile": "src/main/java/com/myorg/CdkSchedulerStack.java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Scheduler Types",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "name": "Kurt Tometich",
- "image": "https://drive.google.com/uc?export=view&id=16K9snJRzXYTI7O0nYbzrKVYP58xOxciB",
- "bio": "Kurt is a Sr. Solutions Architect based in Colorado who enjoys building lean, mean serverless solutions.",
- "linkedin": "kurt-tometich",
- "twitter": ""
- }
- ]
-}
diff --git a/eventbridge-schedule-to-lambda-cdk/example-pattern.json b/eventbridge-schedule-to-lambda-cdk/example-pattern.json
deleted file mode 100644
index 0f72df44b..000000000
--- a/eventbridge-schedule-to-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "EventBridge Scheduler to Lambda every 5 minutes with CDK",
- "description": "Simple pattern that triggers a Lambda function every 5 minutes using Amazon EventBridge Scheduler and CDK",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a scheulde that runs every 5 minutes to trigger a given Lambda function."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-cdk",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-cdk",
- "projectFolder": "eventbridge-schedule-to-lambda-cdk",
- "templateFile": "cdk/lib/eventbridge-scehdules-with-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-to-lambda-sam-go/example-pattern.json b/eventbridge-schedule-to-lambda-sam-go/example-pattern.json
deleted file mode 100644
index 5450dc587..000000000
--- a/eventbridge-schedule-to-lambda-sam-go/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to AWS Lambda",
- "description": "Creates an EventBridge schedule to invoke a Go based Lambda function every 5 minutes",
- "language": "Go",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke a Go based Lambda function using EventBridge Scheduler and deployed with the AWS Serverless Application Model (SAM)."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-sam-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-sam-go",
- "projectFolder": "eventbridge-schedule-to-lambda-sam-go",
- "templateFile": "eventbridge-schedule-to-lambda-sam-go/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Building Lambda functions with Go",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-golang.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack and follow the prompts: sam delete
"
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-schedule-to-lambda-sam-java/example-pattern.json b/eventbridge-schedule-to-lambda-sam-java/example-pattern.json
deleted file mode 100644
index f65129399..000000000
--- a/eventbridge-schedule-to-lambda-sam-java/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to Lambda",
- "description": "Creates an EventBridge schedule to run a Lambda every 5 minutes",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to use Amazon EventBridge Scheduler with Lambda to invoke a function on a schedule. This pattern uses the rate type schedule to run the Lambda function every 5 minutes.",
- "This deploys one EventBridge rate based schedule and one Java 11 based Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-sam-java",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-sam-java",
- "projectFolder": "eventbridge-schedule-to-lambda-sam-java",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Scheduler Types",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "sam delete"
- ]
- },
- "authors": [
- {
- "name": "Kurt Tometich",
- "image": "https://drive.google.com/uc?export=view&id=1ny7F-OwtRCmozvJCVPwCPGecM70xgdlF",
- "bio": "Kurt is a Sr. Solutions Architect based in Colorado who enjoys building lean, mean serverless solutions.",
- "linkedin": "kurt-tometich",
- "twitter": ""
- }
- ]
-}
diff --git a/eventbridge-schedule-to-lambda-terraform-python/example-pattern.json b/eventbridge-schedule-to-lambda-terraform-python/example-pattern.json
deleted file mode 100644
index c8bc1b9fe..000000000
--- a/eventbridge-schedule-to-lambda-terraform-python/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to AWS Lambda",
- "description": "Creates an EventBridge schedule to invoke a Python based Lambda function every 5 minutes",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke a Python based Lambda function using EventBridge Scheduler and deployed with Terraform."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-terraform-python",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-terraform-python",
- "projectFolder": "eventbridge-schedule-to-lambda-terraform-python",
- "templateFile": "eventbridge-schedule-to-lambda-terraform-python/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Building Lambda functions with Python",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
"
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-lambda-terraform-typescript/example-pattern.json b/eventbridge-schedule-to-lambda-terraform-typescript/example-pattern.json
deleted file mode 100644
index 58585da5d..000000000
--- a/eventbridge-schedule-to-lambda-terraform-typescript/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Schedule to Lambda",
- "description": "Creates an EventBridge schedule to invoke a Lambda every 5 minutes",
- "language": "TypeScript",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke a TypeScript based Lambda function using EventBridge Scheduler and deployed with Terraform."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda-terraform-typescript",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda-terraform-typescript",
- "projectFolder": "eventbridge-schedule-to-lambda-terraform-typescript",
- "templateFile": "eventbridge-schedule-to-lambda-terraform-typescript/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Building Lambda functions with TypeScript",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-typescript.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
"
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-lambda/example-pattern.json b/eventbridge-schedule-to-lambda/example-pattern.json
deleted file mode 100644
index e57646dee..000000000
--- a/eventbridge-schedule-to-lambda/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "EventBridge Scheduler to Lambda every 5 minutes",
- "description": "Simple pattern that triggers a Lambda function every 5 minutes using Amazon EventBridge Scheduler",
- "language": "TypeScript",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Creates a scheulde that runs every 5 minutes to trigger a given Lambda function."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-lambda",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-lambda",
- "projectFolder": "eventbridge-schedule-to-lambda",
- "templateFile": "eventbridge-schedule-to-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.jpg",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-schedule-to-sns-cdk-go/example-pattern.json b/eventbridge-schedule-to-sns-cdk-go/example-pattern.json
deleted file mode 100644
index afda135d4..000000000
--- a/eventbridge-schedule-to-sns-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SNS",
- "description": "Simple pattern that publishes a message to an SNS topic every 5 minutes",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SNS topic every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for Go."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sns-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sns-cdk-go",
- "projectFolder": "eventbridge-schedule-to-sns-cdk-go",
- "templateFile": "eventbridge-schedule-to-sns-cdk.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SNS",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-sns-cdk-python/example-pattern.json b/eventbridge-schedule-to-sns-cdk-python/example-pattern.json
deleted file mode 100644
index b8d7e152e..000000000
--- a/eventbridge-schedule-to-sns-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SNS",
- "description": "Simple pattern that publishes a message to an SNS topic every 5 minutes",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SNS topic every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for Python."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sns-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sns-cdk-python",
- "projectFolder": "eventbridge-schedule-to-sns-cdk-python",
- "templateFile": "eventbridge_schedule_to_sns_cdk_python/eventbridge_schedule_to_sns_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SNS",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
- }
diff --git a/eventbridge-schedule-to-sns-cdk-typescript/example-pattern.json b/eventbridge-schedule-to-sns-cdk-typescript/example-pattern.json
deleted file mode 100644
index f1f7a4807..000000000
--- a/eventbridge-schedule-to-sns-cdk-typescript/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SNS",
- "description": "Simple pattern that publishes a message to an SNS topic every 5 minutes",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SNS topic every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for TypeScript."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sns-cdk-typescript",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sns-cdk-typescript",
- "projectFolder": "eventbridge-schedule-to-sns-cdk-typescript",
- "templateFile": "lib/eventbridge-schedule-to-sns-cdk-typescript-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SNS",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-schedule-to-sns-publish-cdk-java/example-pattern.json b/eventbridge-schedule-to-sns-publish-cdk-java/example-pattern.json
deleted file mode 100644
index 3af978136..000000000
--- a/eventbridge-schedule-to-sns-publish-cdk-java/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "EventBridge Scheduler to publish messages to Amazon SNS",
- "description": "Simple pattern that publishes a message to a SNS topic every 5 minutes. Email address subscribed to the SNS topic will receive notifcication every 5 minutes.",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to use EventBridge Scheduler to publish message to a Amazon SNS topic every 5 minutes and deployed using the AWS CDK for Java."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sns-publish-cdk-java",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sns-publish-cdk-java",
- "projectFolder": "eventbridge-schedule-to-sns-publish-cdk-java",
- "templateFile": "eventbridge-schedule-to-sns-publish-cdk-java/src/main/java/com/myorg/EventbridgeScheduleToSnsCdkJavaStack.java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with the AWS CDK in Java",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-java.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SNS",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy -c email=sample@example.com
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Hoi Wing Chan",
- "bio": "Hoi Wing is a Technical Account Manager at Amazon Web Services with a background of software development and architecture.",
- "linkedin": "https://www.linkedin.com/in/wing-chan-0943a344"
- }
- ]
-}
diff --git a/eventbridge-schedule-to-sqs-cdk-go/example-pattern.json b/eventbridge-schedule-to-sqs-cdk-go/example-pattern.json
deleted file mode 100644
index 464d9b170..000000000
--- a/eventbridge-schedule-to-sqs-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SQS",
- "description": "Simple pattern that publishes a message to an SQS queue every 5 minutes",
- "language": "Go",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SQS queue every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for Go."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sqs-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sqs-cdk-go",
- "projectFolder": "eventbridge-schedule-to-sqs-cdk-go",
- "templateFile": "eventbridge-schedule-to-sqs-cdk.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SQS",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
- }
\ No newline at end of file
diff --git a/eventbridge-schedule-to-sqs-cdk-python/example-pattern.json b/eventbridge-schedule-to-sqs-cdk-python/example-pattern.json
deleted file mode 100644
index f2bf1e82b..000000000
--- a/eventbridge-schedule-to-sqs-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SQS",
- "description": "Simple pattern that publishes a message to an SQS queue every 5 minutes",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SQS queue every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for Python."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sqs-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sqs-cdk-python",
- "projectFolder": "eventbridge-schedule-to-sqs-cdk-python",
- "templateFile": "eventbridge_schedule_to_sqs_cdk_python/eventbridge_schedule_to_sqs_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SQS",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
diff --git a/eventbridge-schedule-to-sqs-cdk-typescript/example-pattern.json b/eventbridge-schedule-to-sqs-cdk-typescript/example-pattern.json
deleted file mode 100644
index 53ff7cc91..000000000
--- a/eventbridge-schedule-to-sqs-cdk-typescript/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SQS",
- "description": "Simple pattern that publishes a message to an SQS queue every 5 minutes",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SQS queue every 5 minutes using EventBridge Scheduler and deployed using the AWS CDK for TypeScript."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sqs-cdk-typescript",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sqs-cdk-typescript",
- "projectFolder": "eventbridge-schedule-to-sqs-cdk-typescript",
- "templateFile": "eventbridge-schedule-to-sqs-cdk-typescript/lib/eventbridge-schedule-to-sqs-cdk-typescript-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SQS",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for all things Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-sqs-sam/example-pattern.json b/eventbridge-schedule-to-sqs-sam/example-pattern.json
deleted file mode 100644
index f56ec60a0..000000000
--- a/eventbridge-schedule-to-sqs-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "EventBridge Scheduler to send messages to Amazon SQS",
- "description": "Simple pattern that publishes a message to an SQS queue every 5 minutes",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to send a message to an Amazon SQS queue every 5 minutes using EventBridge Scheduler and deployed using the AWS Serverless Application Model (SAM)."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sqs-sam",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sqs-sam",
- "projectFolder": "eventbridge-schedule-to-sqs-sam",
- "templateFile": "eventbridge-schedule-to-sqs-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "Getting started with Amazon SQS",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Tadhg O'Brien",
- "bio": "Tadhg is a Technical Account Manager at Amazon Web Services supporting Public Sector customers and has a passion for Serverless",
- "linkedin": "tadhgobrien"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-sqs-terraform/example-pattern.json b/eventbridge-schedule-to-sqs-terraform/example-pattern.json
deleted file mode 100644
index 95263a5b3..000000000
--- a/eventbridge-schedule-to-sqs-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "EventBridge Scheduler to SQS",
- "description": "Create an EventBridge Scheduler that sends messages to an SQS queue",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys an EventBridge Scheduler that triggers an SQS SendMessage API Call every minute"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-sqs-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-sqs-terraform",
- "projectFolder": "eventbridge-schedule-to-sqs-terraform",
- "templateFile": "eventbridge-schedule-to-sqs-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Francesco Vergona",
- "image": "https://avatars.githubusercontent.com/f-verg",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/francesco-vergona/"
- }]
-}
diff --git a/eventbridge-schedule-to-ssm-sam/example-pattern.json b/eventbridge-schedule-to-ssm-sam/example-pattern.json
deleted file mode 100644
index 888e7aa57..000000000
--- a/eventbridge-schedule-to-ssm-sam/example-pattern.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "title": "EventBridge to Systems Manager Associations",
- "description": "Create an EventBridge Schedule to execute a SSM State Manager Association",
- "language": "YAML",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern demonstrates how to use EventBridge Scheduler to run a SSM Association every 15 minutes and deployed using SAM."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-ssm-sam",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-ssm-sam",
- "readmeURL":"https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-ssm-sam/README.md",
- "projectFolder": "eventbridge-schedule-to-ssm-sam",
- "templateFile": "eventbridge-schedule-to-ssm-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "EventBridge Scheduler User Guide",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- },
- {
- "text": "CloudFormation AWS::Scheduler::Schedule",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedule.html"
- },
- {
- "text": "SSM Start_associations_Once SDK Reference",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ssm/client/start_associations_once.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build
",
- "sam deploy --guided
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed clean-up instructions."
- ]
- },
- "authors": [
- {
- "name": "Joe Losinski",
- "image": "https://avatars.githubusercontent.com/u/128616881?s=400&u=709f313db9eab1162d1874860c96bbd44164f1bf&v=4",
- "bio": "AWS Senior Solutions Architect and Serverless Enthusiast."
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-step-function-cdk-go/example-pattern.json b/eventbridge-schedule-to-step-function-cdk-go/example-pattern.json
deleted file mode 100644
index 79c92b666..000000000
--- a/eventbridge-schedule-to-step-function-cdk-go/example-pattern.json
+++ /dev/null
@@ -1,64 +0,0 @@
-{
- "title": "EventBridge schedule to trigger Step Function with CDK Go",
- "description": "Simple pattern that triggers Step Function execution at the beginning of every hour using EventBridge Scheduler with CDK/Go. ",
- "language": "Go",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "EventBridge Scheduler triggers a new Step Function execution every hour."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-step-function-cdk-go",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-step-function-cdk-go",
- "projectFolder": "eventbridge-schedule-to-step-function-cdk-go",
- "templateFile": "cdk/main.go"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- },
- {
- "text": "Scheduler Documentation for CDK v2 Go",
- "link": "https://pkg.go.dev/github.com/aws/aws-cdk-go/awscdk/awsscheduler"
- },
- {
- "text": "Working with the AWS CDK in Go",
- "link": "https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-go.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "André Stoll",
- "image": "https://user-images.githubusercontent.com/44157083/231747014-89cb4bc7-d977-45c8-be01-007831d346ad.jpeg",
- "bio": "André is a Solutions Architect at Amazon Web Services based in Switzerland.",
- "linkedin": "andre-stoll"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-schedule-to-step-function-terraform/example-pattern.json b/eventbridge-schedule-to-step-function-terraform/example-pattern.json
deleted file mode 100644
index 0150a3423..000000000
--- a/eventbridge-schedule-to-step-function-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to AWS Step Functions",
- "description": "Create an EventBridge Scheduler that executes a Step Functions State Machine",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys an EventBridge Scheduler that triggers the execution of a Step Functions State Machine every minute"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schedule-to-step-function-terraform",
- "templateURL": "serverless-patterns/eventbridge-schedule-to-step-function-terraform",
- "projectFolder": "eventbridge-schedule-to-step-function-terraform",
- "templateFile": "eventbridge-schedule-to-step-function-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Francesco Vergona",
- "image": "https://avatars.githubusercontent.com/f-verg",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/francesco-vergona/"
- }]
-}
diff --git a/eventbridge-scheduled-lambda-java/example-pattern.json b/eventbridge-scheduled-lambda-java/example-pattern.json
deleted file mode 100644
index fd034f29e..000000000
--- a/eventbridge-scheduled-lambda-java/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduled to AWS Lambda",
- "description": "Create a Lambda function triggered on a recurring schedule.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "Create an scheduled EventBridge rule that invokes a Lambda function",
- "text": [
- "This template deploys a Lambda function that is triggered by an EventBridge Schedule.",
- "In this example, the Lambda function logs text to the console every minute."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-scheduled-lambda-java",
- "templateURL": "serverless-patterns/eventbridge-scheduled-lambda-java",
- "projectFolder": "eventbridge-scheduled-lambda-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Schedule expressions using rate or cron",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-cloudwatchevents-expressions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Talia Nassi",
- "bio": "Talia is a Senior Developer Advocate for AWS Serverless based in Los Angeles, CA.",
- "linkedin": "talianassi",
- "twitter": "@talia_nassi"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect, AWS."
- }
- ]
-}
diff --git a/eventbridge-scheduled-lambda-terraform/example-pattern.json b/eventbridge-scheduled-lambda-terraform/example-pattern.json
deleted file mode 100644
index d962db0be..000000000
--- a/eventbridge-scheduled-lambda-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Scheduled EventBridge rule for Lambda",
- "description": "Create a scheduled EventBridge rule that invokes a Lambda function",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys a Lambda function that is triggered by an EventBridge Schedule. In this example, the Lambda function logs text to the console every minute."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-scheduled-lambda-terraform",
- "templateURL": "serverless-patterns/eventbridge-scheduled-lambda-terraform",
- "projectFolder": "eventbridge-scheduled-lambda-terraform",
- "templateFile": "eventbridge-scheduled-lambda-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/eventbridge-scheduler-ssm-cdk-python/example-pattern.json b/eventbridge-scheduler-ssm-cdk-python/example-pattern.json
deleted file mode 100644
index 7a54e0dfa..000000000
--- a/eventbridge-scheduler-ssm-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to AWS Systems Manager State Manager Associations",
- "description": "Create an EventBridge scheduler to run SSM Associations",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to create an EventBridge scheduler to run SSM Associations using AWS Cloud Development Kit (CDK) for Python."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-scheduler-ssm-cdk-python",
- "templateURL": "serverless-patterns/eventbridge-scheduler-ssm-cdk-python",
- "projectFolder": "eventbridge-scheduler-ssm-cdk-python",
- "templateFile": "eventbridge_scheduler_ssm_cdk_python/eventbridge_scheduler_ssm_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "AWS Systems Manager State Manager",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Eugene Kim",
- "bio": "Eugene is a Sr. Solutions Architect at AWS and Serverless Enthusiast.",
- "linkedin": "kimeugene"
- }
- ]
-}
diff --git a/eventbridge-scheduler-ssm-cdk-typescript/example-pattern.json b/eventbridge-scheduler-ssm-cdk-typescript/example-pattern.json
deleted file mode 100644
index 55e246b9c..000000000
--- a/eventbridge-scheduler-ssm-cdk-typescript/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon EventBridge Scheduler to AWS Systems Manager State Manager associations",
- "description": "Create an Amazon EventBridge Scheduler event to run AWS Systems Manager State Manager associations",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to create an Amazon EventBridge Scheduler to run AWS Systems Manager State Manager associations using AWS Cloud Development Kit (CDK) for TypeScript."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-scheduler-ssm-cdk-typescript",
- "templateURL": "serverless-patterns/eventbridge-scheduler-ssm-cdk-typescript",
- "projectFolder": "eventbridge-scheduler-ssm-cdk-typescript",
- "templateFile": "eventbridge-scheduler-ssm-cdk-typescript/lib/eventbridge-scheduler-ssm-cdk-typescript-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting Started with Amazon EventBridge Scheduler",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/getting-started.html"
- },
- {
- "text": "AWS Systems Manager State Manager",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-state.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Eugene Kim",
- "bio": "Eugene is a Sr. Solutions Architect at AWS and Serverless Enthusiast.",
- "linkedin": "kimeugene"
- }
- ]
-}
diff --git a/eventbridge-schema-notifications/example-pattern.json b/eventbridge-schema-notifications/example-pattern.json
deleted file mode 100644
index cb4a63109..000000000
--- a/eventbridge-schema-notifications/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "Notify consumers of schema changes with Schema Registry events",
- "description": "Use schema registry and EventBridge to notify consumers of changes (Slack example)",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern will use a CDK abstraction to allow consumers to listen to for schema changes with Amazon EventBridge. Schema changes will be forward to Slack (as an example)"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-schema-notifications",
- "templateURL": "serverless-patterns/eventbridge-schema-notifications",
- "projectFolder": "eventbridge-schema-notifications",
- "templateFile": "cdk/lib/single-bus-enrichment-with-lambda.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Content rnricher messaging pattern",
- "link": "https://www.enterpriseintegrationpatterns.com/DataEnricher.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/eventbridge-sns-dotnet-cdk/example-pattern.json b/eventbridge-sns-dotnet-cdk/example-pattern.json
deleted file mode 100644
index b11e5a929..000000000
--- a/eventbridge-sns-dotnet-cdk/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon Eventbridge to Amazon SNS",
- "description": "Create an EventBridge rule that invokes an SNS topic.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK template deploys a SNS topic that is triggered by an EventBridge rule.",
- "The SNS topic policy provides the permission for EventBridge to invoke the SNS topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sns-dotnet-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sns-dotnet-cdk/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Amir Khairalomoum",
- "image": "https://d2908q01vomqb2.cloudfront.net/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59/2021/06/29/Amir-Khairalomoum.jpg",
- "bio": "Amir is a Sr. Solutions Architect at AWS. He supports customers in their digital transformation and their cloud journey to AWS. He is passionate about serverless technologies.",
- "linkedin": "amir-khairalomoum",
- "twitter": "@mrark1361"
- }
- ]
-}
diff --git a/eventbridge-sns-java-cdk/example-pattern.json b/eventbridge-sns-java-cdk/example-pattern.json
deleted file mode 100644
index dcf164f00..000000000
--- a/eventbridge-sns-java-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon EventBridge to Amazon SNS",
- "description": "Create an EventBridge rule that invokes an SNS topic.",
- "language": "Java",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK template deploys a SNS topic that is triggered by an EventBridge rule.",
- "The SNS topic policy provides the permission for EventBridge to invoke the SNS topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sns-java-cdk",
- "projectFolder": "eventbridge-sns-java-cdk",
- "templateFile": "src/main/java/com/myorg/CdkEventBridgeSnsStack.java",
- "templateURL": "serverless-patterns/eventbridge-sns-java-cdk"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Matt Ridehalgh",
- "image": "https://avatars.githubusercontent.com/u/9155962",
- "bio": "Matt Ridehalgh is a Solutions Architect at AWS.",
- "linkedin": "matthew-ridehalgh",
- "twitter": "mrideh"
- }
- ]
-}
diff --git a/eventbridge-sns-lambda/example-pattern.json b/eventbridge-sns-lambda/example-pattern.json
deleted file mode 100644
index 65e97b8e9..000000000
--- a/eventbridge-sns-lambda/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Amazon EventBridge to SNS to Lambda Function",
- "description": "Using SNS to forward EventBridge rule trigger to AWS Lambda Function",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a SNS Topic can be used as target for an EventBridge rule and then invokes a Lambda function.",
- "This pattern deploys a EventBridge rule with target as SNS topic which has a Lambda function as subscription"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sns-lambda",
- "templateURL": "serverless-patterns/eventbridge-sns-lambda",
- "projectFolder": "eventbridge-sns-lambda",
- "templateFile": "eventbridge-sns-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating Amazon EventBridge rules that react to events",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Bhavyesh",
- "image": "https://drive.google.com/file/d/1oe_B5KT6iPJgOnS9RzVAlQNVr1GY3N0s/view?usp=sharing",
- "bio": "Bhavyesh is a Serverless Cloud Engineer at Amazon Web Services and is based in India. Bhavyesh is a SME of serverless and messaging domains",
- "linkedin": "https://www.linkedin.com/in/vyasbhavyesh/"
- }
- ]
- }
-
diff --git a/eventbridge-sqs-dotnet-cdk/example-pattern.json b/eventbridge-sqs-dotnet-cdk/example-pattern.json
deleted file mode 100644
index c433b569f..000000000
--- a/eventbridge-sqs-dotnet-cdk/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon Eventbridge to Amazon SQS",
- "description": "Create an EventBridge rule that invokes a SQS queue.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains sample AWS CDK code to create an EventBridge rule, as well as a SQS queue.",
- "The EventBridge rule publishes matched events to the SQS queue. In this example, the rule filters for specific attributes in the event before sending the event to the queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sqs-dotnet-cdk",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sqs-dotnet-cdk/README.md"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Amir Khairalomoum",
- "image": "https://d2908q01vomqb2.cloudfront.net/f1f836cb4ea6efb2a0b1b99f41ad8b103eff4b59/2021/06/29/Amir-Khairalomoum.jpg",
- "bio": "Amir is a Sr. Solutions Architect at AWS. He supports customers in their digital transformation and their cloud journey to AWS. He is passionate about serverless technologies.",
- "linkedin": "amir-khairalomoum",
- "twitter": "@mrark1361"
- }
- ]
-}
diff --git a/eventbridge-sqs-ecs-cdk/example-pattern.json b/eventbridge-sqs-ecs-cdk/example-pattern.json
deleted file mode 100644
index b147ee891..000000000
--- a/eventbridge-sqs-ecs-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Trigger ECS task from SQS using EventBridge",
- "description": "Create an application to create ECS tasks based on SQS messages pushed through EventBridge.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project contains sample AWS CDK code to integrate Amazon EventBridge, Amazon SQS and Amazon Elastic Container Service (ECS).",
- "As a new event is sent to EventBridge, it is queued in SQS and then, based on the number of messages in the queue, it creates an ECS cluster with Fargate task definitions.",
- "When the task is completed, it deletes the message from the queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sqs-ecs-cdk",
- "templateURL": "serverless-patterns/eventbridge-sqs-ecs-cdk",
- "projectFolder": "eventbridge-sqs-ecs-cdk/src",
- "templateFile": "eventbridge-sqs-ecs-cdk/src/lib/eb-sqs-ecs-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge- Build event-driven applications at scale across AWS",
- "link": "https://aws.amazon.com/eventbridge/"
- },
- {
- "text": "Amazon SQS- Fully managed message queuing for microservices, distributed systems, and serverless applications",
- "link": "https://aws.amazon.com/sqs/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Kiranpreet Chawla",
- "bio": "Solutions Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/kiranpreet-chawla/"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-sqs-sls/example-pattern.json b/eventbridge-sqs-sls/example-pattern.json
deleted file mode 100644
index 41ea91f06..000000000
--- a/eventbridge-sqs-sls/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "EventBridge to SQS",
- "description": "Create an EventBridge rule that invokes an SQS queue.",
- "language": "",
- "architectureURL": "",
- "videoId": "",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "eventbridge",
- "to": "sqs"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys an SQS queue that is triggered by an EventBridge rule. ",
- "The SQS queue policy provides the permission for EventBridge to send messages to the SQS queue.",
- "",
- "In this example, the EventBridge rule specified in `serverless.yml` filters the events based upon the criteria in the `EventPattern` section. ",
- "When matching events are sent to EventBridge that trigger the rule, they are delivered as a JSON event payload (see \"Example event payload from EventBridge to SQS\" in the README) to the SQS queue."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-sqs-sls",
- "templateURL": "serverless-patterns/eventbridge-sqs-sls",
- "projectFolder": "eventbridge-sqs-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "serverless deploy --verbose
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "serverless remove --verbose
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Dmitry Gulin, Modernization Architect, AWS",
- "name": "Dmitry Gulin",
- "bio": "Dmitry is a modernization architect for Professional Services at Amazon Web Services based in the US.",
- "imageURL": "https://www.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a?s=200"
- }
- ]
-}
\ No newline at end of file
diff --git a/eventbridge-webhooks/1-stripe/example-pattern.json b/eventbridge-webhooks/1-stripe/example-pattern.json
deleted file mode 100644
index 4c923d4df..000000000
--- a/eventbridge-webhooks/1-stripe/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Stripe to EventBridge",
- "description": "Amazon EventBridge Inbound webhook for Stripe.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This stack deploys an inbound webhook that subscribes to events from Stripe and receives them on an Amazon EventBridge event bus for further processing.",
- "EventBridge is a serverless event bus that enables you to build scalable event-driven applications by routing events between your own applications, third-party SaaS applications, and other AWS services.",
- "This pattern deploys one Lambda function with a fURL, one Secrets Manager secret, and a CloudWatch alarm."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-webhooks",
- "templateURL": "serverless-patterns/eventbridge-webhooks/1-stripe",
- "projectFolder": "eventbridge-webhooks",
- "templateFile": "eventbridge-webhooks/1-stripe/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge now supports receiving events from GitHub, Stripe and Twilio using Webhooks",
- "link": "https://aws.amazon.com/about-aws/whats-new/2022/08/amazon-eventbridge-supports-receiving-events-github-stripe-twilio-using-webhooks/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Rohan Mehta",
- "image": "https://phonetool.amazon.com/users/merohan",
- "bio": "Associate Cloud Application Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/rohan-mehta-1052b570/",
- "twitter": "twitter.com/rohanmehta_dev"
- }
- ]
-}
diff --git a/eventbridge-webhooks/2-github/example-pattern.json b/eventbridge-webhooks/2-github/example-pattern.json
deleted file mode 100644
index 608b22a57..000000000
--- a/eventbridge-webhooks/2-github/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "GitHub to EventBridge Webhook",
- "description": "Amazon EventBridge Inbound webhook for GitHub.",
- "language": "python3.7",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This stack deploys an inbound webhook that subscribes to events from GitHub and receives them on an Amazon EventBridge event bus for further processing.",
- "EventBridge is a serverless event bus that enables you to build scalable event-driven applications by routing events between your own applications, third-party SaaS applications, and other AWS services.",
- "This pattern deploys one Lambda function with a fURL, one Secrets Manager secret, and a CloudWatch alarm."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-webhooks",
- "templateURL": "serverless-patterns/eventbridge-webhooks/2-github",
- "projectFolder": "eventbridge-webhooks",
- "templateFile": "eventbridge-webhooks/2-github/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge now supports receiving events from GitHub, Stripe and Twilio using Webhooks",
- "link": "https://aws.amazon.com/about-aws/whats-new/2022/08/amazon-eventbridge-supports-receiving-events-github-stripe-twilio-using-webhooks/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alseny Diallo",
- "image": "https://phonetool.amazon.com/users/dialseny",
- "bio": "Prototype Solution Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/alseny-diallo-66b64080/",
- "twitter": "twitter.com/alsenidiallo"
- }
- ]
-}
diff --git a/eventbridge-webhooks/3-twilio/example-pattern.json b/eventbridge-webhooks/3-twilio/example-pattern.json
deleted file mode 100644
index 258683b3a..000000000
--- a/eventbridge-webhooks/3-twilio/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Twilio to Eventbridge",
- "description": "Amazon EventBridge Inbound webhook for Twilio.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This stack deploys an inbound webhook that subscribes to events from Twilio and receives them on an Amazon EventBridge event bus for further processing.",
- "EventBridge is a serverless event bus that enables you to build scalable event-driven applications by routing events between your own applications, third-party SaaS applications, and other AWS services.",
- "This pattern deploys one Lambda function with a fURL, one Secrets Manager secret, and a CloudWatch alarm." ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/eventbridge-webhooks",
- "templateURL": "serverless-patterns/eventbridge-webhooks/3-twilio",
- "projectFolder": "eventbridge-webhooks",
- "templateFile": "eventbridge-webhooks/3-twilio/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge now supports receiving events from GitHub, Stripe and Twilio using Webhooks",
- "link": "https://aws.amazon.com/about-aws/whats-new/2022/08/amazon-eventbridge-supports-receiving-events-github-stripe-twilio-using-webhooks/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Rohan Mehta",
- "image": "https://phonetool.amazon.com/users/merohan",
- "bio": "Associate Cloud Application Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/rohan-mehta-1052b570/",
- "twitter": "twitter.com/rohanmehta_dev"
- }
- ]
-}
diff --git a/firehose-transformation-cdk/example-pattern.json b/firehose-transformation-cdk/example-pattern.json
deleted file mode 100644
index c3755aa9c..000000000
--- a/firehose-transformation-cdk/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Kinesis Firehose Data Transformation with Lambda ",
- "description": "Transform incoming source data and deliver the transformed data to destinations.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The purpose of this pattern is to deploy the infrastructure necessary to enable Kinesis Data Firehose data transformation.",
- "Kinesis Data Firehose can invoke a Lambda function to transform incoming source data and deliver the transformed data to destinations. In this architecture, Kinesis Data Firehose then invokes the specified Lambda function asynchronously with each buffered batch using the AWS Lambda synchronous invocation mode. The transformed data is sent from Lambda to Kinesis Data Firehose. Kinesis Data Firehose then sends it to the destination S3 bucket when the specified destination buffering size or buffering interval is reached, whichever happens first."
-
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/firehose-transformation-cdk",
- "templateURL": "serverless-patterns/firehose-transformation-cdk",
- "projectFolder": "firehose-transformation-cdk",
- "templateFile": "firehose-transformation-cdk/app.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Kinesis Data Firehose Data Transformation",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/data-transformation.html"
- },
- {
- "text": "Redact sensitive data from streaming data in near-real time using Amazon Comprehend and Amazon Kinesis Data Firehose",
- "link": "https://aws.amazon.com/blogs/machine-learning/redact-sensitive-data-from-streaming-data-in-near-real-time-using-amazon-comprehend-and-amazon-kinesis-data-firehose/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Maya Flores",
- "image": "https://media-exp1.licdn.com/dms/image/C4E03AQGFaDVfkIJi4g/profile-displayphoto-shrink_200_200/0/1620953260457?e=1671062400&v=beta&t=pVt_BUU-r7MtlMwcOxgXgtaUM2tVRe4CUtlUknM--os",
- "bio": "Partner Solutions Architect @ AWS. Serverless enthusiast.",
- "linkedin": "maya-m-flores"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/firehose-transformation-sam-python/example-pattern.json b/firehose-transformation-sam-python/example-pattern.json
deleted file mode 100644
index fef88fc08..000000000
--- a/firehose-transformation-sam-python/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Kinesis Firehose Data Transformation with Lambda",
- "description": "Transform incoming source data and deliver the transformed data to destinations.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to transform streaming data received by Kinesis Data Firehose using AWS Lambda before delivering the transformed data to Amazon S3.",
- "To transform incoming source data, Kinesis Data Firehose invokes the specified Lambda function asynchronously with each buffered batch using the AWS Lambda synchronous invocation mode. The transformed data is sent from Lambda to Kinesis Data Firehose. Kinesis Data Firehose then sends it to the destination S3 bucket when the specified destination buffering size or buffering interval is reached, whichever happens first."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/firehose-transformation-sam-python",
- "templateURL": "serverless-patterns/firehose-transformation-sam-python",
- "projectFolder": "firehose-transformation-sam-python",
- "templateFile": "firehose-transformation-sam-python/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Kinesis Data Firehose Data Transformation",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/data-transformation.html"
- },
- {
- "text": "Using AWS Lambda with Amazon Kinesis Data Firehose",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-kinesisfirehose.html"
- },
- {
- "text": "Ingesting enriched IoT data into Amazon S3 using Amazon Kinesis Data Firehose",
- "link": "https://aws.amazon.com/blogs/iot/ingesting-enriched-iot-data-into-amazon-s3-using-amazon-kinesis-data-firehose/"
- },
- {
- "text": "Capture clickstream data using AWS serverless services",
- "link": "https://aws.amazon.com/blogs/industries/capture-clickstream-data-using-aws-serverless-services/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Edward Schaefer",
- "image": "https://d2siip5gg18ho0.cloudfront.net/images/schaeedw-photo-centered_250x250.jpg",
- "bio": "Solutions Architect @ Amazon Web Services",
- "linkedin": "ejschaefer"
- }
- ]
-}
diff --git a/firehose-transformation-sam/example-pattern.json b/firehose-transformation-sam/example-pattern.json
deleted file mode 100644
index b0724c082..000000000
--- a/firehose-transformation-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Kinesis Firehose Data Transformation with Lambda",
- "description": "Transform incoming source data and deliver the transformed data to destinations.",
- "language": "Node.js",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The purpose of this pattern is to deploy the infrastructure necessary to enable Kinesis Data Firehose data transformation.",
- "Kinesis Data Firehose can invoke a Lambda function to transform incoming source data and deliver the transformed data to destinations. In this architecture, Kinesis Data Firehose then invokes the specified Lambda function asynchronously with each buffered batch using the AWS Lambda synchronous invocation mode. The transformed data is sent from Lambda to Kinesis Data Firehose. Kinesis Data Firehose then sends it to the destination S3 bucket when the specified destination buffering size or buffering interval is reached, whichever happens first."
-
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/firehose-transformation-sam",
- "templateURL": "serverless-patterns/firehose-transformation-sam",
- "projectFolder": "firehose-transformation-sam",
- "templateFile": "firehose-transformation-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Kinesis Data Firehose Data Transformation",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/data-transformation.html"
- },
- {
- "text": "Redact sensitive data from streaming data in near-real time using Amazon Comprehend and Amazon Kinesis Data Firehose",
- "link": "https://aws.amazon.com/blogs/machine-learning/redact-sensitive-data-from-streaming-data-in-near-real-time-using-amazon-comprehend-and-amazon-kinesis-data-firehose/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME"
- ]
- },
- "authors": [
- {
- "name": "Maya Flores",
- "image": "https://media-exp1.licdn.com/dms/image/C4E03AQGFaDVfkIJi4g/profile-displayphoto-shrink_200_200/0/1620953260457?e=1671062400&v=beta&t=pVt_BUU-r7MtlMwcOxgXgtaUM2tVRe4CUtlUknM--os",
- "bio": "Partner Solutions Architect @ AWS. Serverless enthusiast.",
- "linkedin": "maya-m-flores"
- }
- ]
-}
diff --git a/glue-eventbridge-lambda-cdk/example-pattern.json b/glue-eventbridge-lambda-cdk/example-pattern.json
deleted file mode 100644
index 72e9f3133..000000000
--- a/glue-eventbridge-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "AWS Glue Job trigger a Lambda Function over Eventbridge Rule",
- "description": "AWS Glue Job trigger a Lambda Function over Eventbridge Rule after change state to timed out",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys a Spark Streaming AWS Glue Job, an EventBridge Rule and a Lambda Function that is triggered whenever the Glue Job times out.",
- "The CDK application contains the minimum IAM resources required to run the application."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/glue-eventbridge-lambda-cdk",
- "templateURL": "serverless-patterns/glue-eventbridge-lambda-cdk",
- "projectFolder": "glue-eventbridge-lambda-cdk",
- "templateFile": "glue_eventbridge_lambda_cdk/glue_eventbridge_lambda_cdk_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Getting started with Amazon EventBridge",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-get-started.html"
- },
- {
- "text": "AWS Glue Immersion Day",
- "link": "https://catalog.us-east-1.prod.workshops.aws/workshops/ee59d21b-4cb8-4b3d-a629-24537cf37bb5/en-US"
- },
- {
- "text": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/getting-started.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "José Albino Neto",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-jose-albino-neto.jpg",
- "bio": "Cloud Application Architect @ AWS",
- "linkedin": "https://www.linkedin.com/in/albinoneto/",
- "twitter": "none"
- }
- ]
-}
diff --git a/healthlake-change-data-capture/example-pattern.json b/healthlake-change-data-capture/example-pattern.json
deleted file mode 100644
index 89d5e8d25..000000000
--- a/healthlake-change-data-capture/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Using AWS HealthLake as an Event Producer (CDC)",
- "description": "AWS HealthLake is fantastic datastore when working with Healthcare data, especially data that is Patient centric. It comes with a robust API, many integrations to other AWS services and is purely hands-off (serverless).",
- "language": "Go",
- "level": "400",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "When using this pattern, AWS HealthLake becomes not only a consumer of data but also a producer. By adding this capability to HealthLake, it can be put in the center of a modern distributed Healthcare application and serve as an ingress and egress point. When changes occur in HealthLake, they are read, hydrated and then published onto an EventBridge Custom Bus. Once on the Bus, many Rules can be added to extend to any number of consumers needed."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/healthlake-change-data-capture",
- "templateURL": "serverless-patterns/healthlake-change-data-capture",
- "projectFolder": "healthlake-change-data-capture",
- "templateFile": "lib/main-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS HealthLake",
- "link": "https://aws.amazon.com/healthlake/"
- },
- {
- "text": "AWS EventBridge CDK Documentation",
- "link": "https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_events-readme.html"
- },
- {
- "text": "AWS CloudTrail",
- "link": "https://aws.amazon.com/cloudtrail/"
- },
- {
- "text": "Golang Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/golang-handler.html"
- }
- ]
- },
- "deploy": {
- "text": ["make deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["make destroy"]
- },
- "authors": [
- {
- "headline": "Presented by Benjamen Pyle",
- "name": "Benjamen Pyle",
- "image": "https://www.binaryheap.com/wp-content/uploads/2023/02/cropped-Photo-on-1-26-23-at-8.57-AM-2.png",
- "bio": "Benjamen Pyle is an AWS Community Builder who loves building scalable and useful applications with Serverless and Event Driven Architectures",
- "linkedin": "benjamenpyle",
- "twitter": "benjamenpyle"
- }
- ]
-}
diff --git a/inspector-lambda/example-pattern.json b/inspector-lambda/example-pattern.json
deleted file mode 100644
index 0ed4cad13..000000000
--- a/inspector-lambda/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Process Amazon Inspector Findings",
- "description": "Process Amazon Inspector findings and initial scan results via AWS Lambda and send them to S3 for storage or analysis.",
- "language": "Python",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use an AWS Lambda to filter and process Amazon Inspector Findings, then send them to S3 for archiving or analysis.",
- "Amazon Inspector is a vulnerability management service that continuously scans your AWS workloads for software vulnerabilities and unintended network exposure. Amazon Inspector automatically discovers and scans running Amazon EC2 instances, container images in Amazon Elastic Container Registry (Amazon ECR), and AWS Lambda functions for known software vulnerabilities and unintended network exposure.",
- "Amazon Inspector creates a finding when it discovers a software vulnerability or network configuration issue. A finding describes the vulnerability, identifies the affected resource, rates the severity of the vulnerability, and provides remediation guidance.",
- "This pattern deploys two Amazon EventBridge rules that forward Amazon Inspector Findings and Initial Scan events to Lambda functions. There are two Lambda functions, one that processes Amazon Inspector Findings, and one that processes Amazon Inspector initial scans. The Lambda functions send the processed events to a partitioned S3 Bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/inspector-lambda",
- "templateURL": "serverless-patterns/inspector-lambda",
- "projectFolder": "inspector-lambda",
- "templateFile": "inspector-lambda/app.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Understanding findings in Amazon Inspector",
- "link": "https://docs.aws.amazon.com/inspector/latest/user/findings-understanding.html"
- },
- {
- "text": "Scanning Amazon EC2 instances with Amazon Inspector",
- "link": "https://docs.aws.amazon.com/inspector/latest/user/scanning-ec2.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Maya Flores",
- "image": "https://media.licdn.com/dms/image/C4E03AQGFaDVfkIJi4g/profile-displayphoto-shrink_400_400/0/1620953260457?e=1683763200&v=beta&t=CeqBO-qqvohduG5G1godlrHJi6JF19sQ9SRhtvHEsLM",
- "bio": "Partner Solutions Architect @ AWS. Serverless enthusiast.",
- "linkedin": "maya-m-flores"
- }
- ]
-}
diff --git a/iot-dynamodb/example-pattern.json b/iot-dynamodb/example-pattern.json
deleted file mode 100644
index 616bb8626..000000000
--- a/iot-dynamodb/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "AWS IoT to DynamoDB",
- "description": "Create IoT Topic Rules to put event data to DynamoDB table",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use AWS IoT Topic rules to put incoming event data to DynamoDB. One example demonstrates how to use 'DynamoDB' Action and another example demonstrates how to use 'DynamoDBv2' Action with AWS IoT Topic Rules."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-dynamodb",
- "templateURL": "serverless-patterns/iot-dynamodb",
- "projectFolder": "iot-dynamodb",
- "templateFile": "iot-dynamodb/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS IoT SQL Reference",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-reference.html?icmpid=docs_iot_console"
- },
- {
- "text": "AWS IoT SQL - FROM Clause",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-from.html"
- },
- {
- "text": "AWS IoT Rule Actions",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/iot-sql-from.html"
- },
- {
- "text": "CloudFormation - AWS::IoT::TopicRule",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html"
- },
- {
- "text": "CloudFormation - AWS::DynamoDB::Table",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Udit Parikh",
- "image": "https://1drv.ms/u/s!AufpCThJxKa2g50banMoavhl7i5EUg",
- "bio": "Udit is a AWS 6x Certified Cloud Enthusiast who love building solutions.",
- "linkedin": "https://www.linkedin.com/in/parikhudit"
- }
- ]
-}
diff --git a/iot-dynamodbv2-ttl-cdk/example-pattern.json b/iot-dynamodbv2-ttl-cdk/example-pattern.json
deleted file mode 100644
index fa59a2466..000000000
--- a/iot-dynamodbv2-ttl-cdk/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "IoT Core to DynamoDB",
- "description": "Create an DynamoDBv2 IoT rule action to ingest data over AWS IoT core and publish to Amazon DynamoDB table.",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern uses the DynamoDBv2 action to write all or parts of an MQTT message to an Amazon DynamoDB table.",
- "Each attribute in the payload is written to a separate column in the DynamoDB table. The SQL statement calculates a time to live and puts into the payload when writing to the table.",
- "This pattern deploys one DynamoDB table, one IoT Rule."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-dynamodbv2-ttl-cdk",
- "templateURL": "serverless-patterns/iot-dynamodbv2-ttl-cdk",
- "projectFolder": "iot-dynamodbv2-ttl-cdk",
- "templateFile": "iot-dynamodbv2-ttl-cdk/iot-ddbv2/lib/iot-ddbv2-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon DynamoDBv2 IoT Rule Action",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/dynamodb-v2-rule-action.html"
- },
- {
- "text": "Expiring items using DynamoDB Time to live (TTL)",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/TTL.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [{
- "name": "Ashu Joshi",
- "image": "https://avatars.githubusercontent.com/u/79330125?s=400&u=4802ebc8f24e64031052d3bf95af3dea7920357d&v=4",
- "bio": "I am a Principal Architect, AWS Cloud Architect, Full-Stack Developer, Edge AI/ML/IoT Engineer, and Serverless Enthusiast.",
- "linkedin": "ashujoshi",
- "twitter": "@ashujoshi"
- }]
-}
diff --git a/iot-firehose-s3-cdk/example-pattern.json b/iot-firehose-s3-cdk/example-pattern.json
deleted file mode 100644
index 74a2b952d..000000000
--- a/iot-firehose-s3-cdk/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "IoT Core to Kinesis Data Firehose to S3",
- "description": "Create an IoT rule action to ingest data over AWS IoT core and publish to Amazon Kinesis Data Firehose which buffers the data and writes to an Amazon S3 bucket.",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS CDK stack to create an IoT Rule with a Kinesis Data Firehose action with a Amazon S3 bucket as the destination.",
- "When a message is published to the IoT topic defined in the IoT Rule, this message will be delivered to Kinesis Data Firehose stream. The Kinesis Data Firehose stream is configured to deliver to an Amazon S3 bucket using dynamic partitioning.",
- "This pattern deploys one Kinesis Data Firehose stream and one S3 Bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-firehose-s3-cdk",
- "templateURL": "serverless-patterns/iot-firehose-s3-cdk",
- "projectFolder": "iot-firehose-s3-cdk",
- "templateFile": "iot-firehose-s3-cdk/iot-kfh-s3/lib/iot-kfh-s3-stack.ts"
- }
- },
- "resources": {
- "bullets": [{
- "text": "AWS IoT rule actions - Kinesis Data Firehose",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/kinesis-firehose-rule-action.html"
- },
- {
- "text": "Amazon Kinesis Data Firehose - Amazon S3 Desination",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/create-destination.html#create-destination-s3"
- },
- {
- "text": "Dynamic Partitioning in Kinesis Data Firehose",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/dynamic-partitioning.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [{
- "name": "Ashu Joshi",
- "image": "https://avatars.githubusercontent.com/u/79330125?s=400&u=4802ebc8f24e64031052d3bf95af3dea7920357d&v=4",
- "bio": "I am a Principal Architect, AWS Cloud Architect, Full-Stack Developer, Edge AI/ML/IoT Engineer, and Serverless Enthusiast.",
- "linkedin": "ashujoshi",
- "twitter": "@ashujoshi"
- }]
-}
diff --git a/iot-lambda-cdk-dotnet/example-pattern.json b/iot-lambda-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 93af1be52..000000000
--- a/iot-lambda-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title":"AWS IoT Core to AWS Lambda based on IoT rule",
- "description":"Deploys a Lambda function, an IoT thing, and the minimal IAM resources required to run the application",
- "language":".NET",
- "level":"200",
- "framework":"CDK",
- "introBox":{
- "headline":"How it works",
- "text":[
- "This pattern contains a sample AWS CDK stack to create an IoT rule with an AWS Lambda function.",
- "When an IoT event is sent to an IoT topic, a Lambda function is invoked. This pattern configures a Lambda function to poll this event. The function is invoked with a payload containing the contents of the message event."
- ]
- },
- "gitHub":{
- "template":{
- "repoURL":"https://github.com/aws-samples/serverless-patterns/tree/main/iot-lambda-cdk-dotnet",
- "templateURL":"serverless-patterns/iot-lambda-cdk-dotnet",
- "projectFolder":"iot-lambda-cdk-dotnet",
- "templateFile":"src/cdk/Net6LambdaCdkStack.cs"
- }
- },
- "resources":{
- "bullets":[
- {
- "text":"AWS IoT Core",
- "link":"https://docs.aws.amazon.com/iot/latest/developerguide/what-is-aws-iot.html"
- },
- {
- "text":"AWS Lambda",
- "link":"https://aws.amazon.com/lambda/"
- }
- ]
- },
- "deploy":{
- "text":[
- "cdk deploy"
- ]
- },
- "testing":{
- "text":[
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup":{
- "text":[
- "Delete the stack: cdk delete
."
- ]
- },
- "authors":[
- {
- "name": "Harvey Raju",
- "image": "https://avatars.githubusercontent.com/u/23328766?v=4",
- "bio": "Harvey Raju is a Lead Consultant at Amazon Web Services."
- }
- ]
- }
\ No newline at end of file
diff --git a/iot-sns-sqs-sam/example-pattern.json b/iot-sns-sqs-sam/example-pattern.json
deleted file mode 100644
index fbf7eaa10..000000000
--- a/iot-sns-sqs-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Amazon IoT Core to Amazon SNS to Amazon SQS",
- "description": "Create an IoT rule with an SNS action that delivers messages to an SQS queue.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS SAM stack to create an IoT rule with an SNS action, an SNS topic and an SQS standard queue subscribed to the SNS topic.",
- "When a message is published to the IoT topic defined in the IoT rule, this message will be published to the SNS topic and then the message will be delivered to the SQS queue subscribed to the SNS topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-sns-sqs-sam",
- "templateURL": "serverless-patterns/iot-sns-sqs-sam",
- "projectFolder": "iot-sns-sqs-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "IoT rule Amazon SNS action",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/sns-rule-action.html"
- },
- {
- "text": "Subscribing an Amazon SQS queue to an Amazon SNS topic",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-subscribe-queue-sns-topic.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_NAMED_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Makendran G",
- "image": "https://drive.google.com/file/d/1mUObnbmn52UWL-Zn39EpgpneiBNv3LCN/view?usp=sharing",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/makendran",
- "twitter": "@MakendranG"
- }
- ]
-}
\ No newline at end of file
diff --git a/iot-sns-sqs-terraform/example-pattern.json b/iot-sns-sqs-terraform/example-pattern.json
deleted file mode 100644
index 1f0acce1c..000000000
--- a/iot-sns-sqs-terraform/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "AWS IoT Core to Amazon SNS to Amazon SQS",
- "description": "Create a IoT Rule with a SNS action that delivers messages to a SQS queue.",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS terraform template to create an IoT Rule with a SNS action, a SNS Topic and a SQS standard Queue subscribed to the SNS topic.",
- "When a message is published to the IoT topic defined in the IoT Rule, this message will be published to the SNS topic and then the message will be delivered to the SQS queue subscribed to the SNS topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-sns-sqs-terraform",
- "templateURL": "serverless-patterns/iot-sns-sqs-terraform",
- "projectFolder": "iot-sns-sqs-terraform",
- "templateFile": "main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "IoT Rule SNS action",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/sns-rule-action.html"
- },
- {
- "text": "Subscribing a SQS queue to a SNS topic",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-subscribe-queue-sns-topic.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [
- {
- "name": "Makendran G",
- "image": "https://drive.google.com/file/d/1mUObnbmn52UWL-Zn39EpgpneiBNv3LCN/view?usp=sharing",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/makendran",
- "twitter": "@MakendranG"
- }
- ]
-}
\ No newline at end of file
diff --git a/iot-timestream-cdk/example-pattern.json b/iot-timestream-cdk/example-pattern.json
deleted file mode 100644
index fdd921041..000000000
--- a/iot-timestream-cdk/example-pattern.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "title": "IoT Core to Timestream",
- "description": "Create an IoT rule action to ingest data over AWS IoT core and publish to Amazon Timestream database table.",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS CDK stack to create an IoT Rule with a Timestream action. ",
- "When a message is published to the IoT topic defined in the IoT Rule, this message will be delivered to the specified Timestream database and table in the IoT Rule.",
- "This pattern deploys one Timestream database, table, one IoT Rule."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/iot-timestream-cdk",
- "templateURL": "serverless-patterns/iot-timestream-cdk",
- "projectFolder": "iot-timestream-cdk",
- "templateFile": "iot-timestream-cdk/iot-timestream/lib/iot-timestream-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Timestream IoT Rule Action",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/timestream-rule-action.html"
- },
- {
- "text": "Amazon Timestream and AWS IoT Core",
- "link": "https://docs.aws.amazon.com/timestream/latest/developerguide/IOT-Core.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [{
- "name": "Ashu Joshi",
- "image": "https://avatars.githubusercontent.com/u/79330125?s=400&u=4802ebc8f24e64031052d3bf95af3dea7920357d&v=4",
- "bio": "I am a Principal Architect, AWS Cloud Architect, Full-Stack Developer, Edge AI/ML/IoT Engineer, and Serverless Enthusiast.",
- "linkedin": "ashujoshi",
- "twitter": "@ashujoshi"
- }]
-}
diff --git a/kinesis-data-stream-firehose-apigw-sam/example-pattern.json b/kinesis-data-stream-firehose-apigw-sam/example-pattern.json
deleted file mode 100644
index 4cc3dc4a1..000000000
--- a/kinesis-data-stream-firehose-apigw-sam/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Amazon Kinesis Data Streams to Amazon API Gateway via Amazon Kinesis Data Firehose",
- "description": "POST data received by Kinesis Data Streams to an HTTP endpoint securely using Kinesis Data Firehose",
- "level": "200",
- "language": "Python",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to send data received by Kinesis Data Streams to an HTTP endpoint with authorization (here API Gateway REST API) using Kinesis Data Firehose."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/kinesis-data-stream-firehose-apigw-sam",
- "templateURL": "serverless-patterns/kinesis-data-stream-firehose-apigw-sam",
- "projectFolder": "kinesis-data-stream-firehose-apigw-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Stream data to an HTTP endpoint with Amazon Kinesis Data Firehose",
- "link": "https://aws.amazon.com/blogs/big-data/stream-data-to-an-http-endpoint-with-amazon-kinesis-data-firehose/"
- },
- {
- "text": "Kinesis Data Firehose HTTP Endpoint Destination",
- "link": "https://docs.aws.amazon.com/firehose/latest/dev/create-destination.html#create-destination-http"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Udit Parikh",
- "image": "https://drive.google.com/file/d/1SfEjQtLkPaOHC7JlfugR4OaUD0yNjHu6/view?usp=drivesdk",
- "bio": "Udit is passionate about serverless & event-driven architectures.",
- "linkedin": "parikhudit"
- }
- ]
-}
diff --git a/kinesis-video-rekognition-lambda/example-pattern.json b/kinesis-video-rekognition-lambda/example-pattern.json
deleted file mode 100644
index dfaa66384..000000000
--- a/kinesis-video-rekognition-lambda/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Kinesis Video Stream to Rekognition Stream Processor to Lambda",
- "description": "Create a Rekognition Stream Processor to work on a Kinesis Video Stream and pass the generated events to Lambda for processing or analytics.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Rekognition Stream Processors to analyse Kinesis Video Streams to search for faces and then pass the generated metadata to AWS Lambda for further processing/analytics. This pattern is leveraging the native integration between Kinesis Video and Rekognition Stream Processors which means we only need CDK to connect these components",
- "For this sample project, we're going to develop a Rekognition Stream Processor that works to find connected home labels such as 'PERSON' or 'PET' or 'PACKAGE' for the demo, we're simply using 'PERSON' and 'PET' with a confidence threshold of 80.",
- "This pattern deploys the following resources: 1 Kinesis Video Stream, 1 Kinesis Data Stream, 1 Rekogntion Stream Processor, 1 Lambda Function, 1 S3 Bucket and a Rekognition Collection"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/main/kinesis-video-rekognition-lambda",
- "templateURL": "serverless-patterns/kinesis-video-rekognition-lambda",
- "projectFolder": "kinesis-video-rekognition-lambda",
- "templateFile": "kinesis-video-rekognition-lambda/src/lib/kvs-rekognition-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Rekognition Stream Processors",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/streaming-video.html"
- },
- {
- "text": "Amazon Kinesis Video Streams",
- "link": "https://aws.amazon.com/kinesis/video-streams"
- },
- {
- "text": "Getting started with Rekognition",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/getting-started.html"
- },
- {
- "text": "Connected Home Labels",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/streaming-video-detect-labels.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cd src/ && cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cd src/ && cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Shardul Vaidya",
- "image": "https://media-exp1.licdn.com/dms/image/C4D03AQHzylyiG6DQkA/profile-displayphoto-shrink_800_800/0/1614623784713?e=1671667200&v=beta&t=hnWLZlw1kp38ZwBeLbHUiFkcnJznwmFqA5MGRLaz8kE",
- "bio": "Partner Solutions Architect @ AWS. IoT x Serverless Enthusiast",
- "linkedin": "shardul-vaidya"
- }
- ]
-}
diff --git a/lambda-athena-sam/example-pattern.json b/lambda-athena-sam/example-pattern.json
deleted file mode 100644
index 0cc14ba2d..000000000
--- a/lambda-athena-sam/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Lambda to Athena",
- "description": "Create a Lambda function that queries a prefilled Athena table using boto3 library",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to a Lambda function to invoke a query execution to an Athena database table and fetch them from the same."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-athena-sam",
- "templateURL": "serverless-patterns/lambda-athena-sam",
- "projectFolder": "lambda-athena-sam",
- "templateFile": "lambda-athena-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "How can I schedule an Amazon Athena query?",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/schedule-query-athena/"
- },
- {
- "text": "Boto3 client for Athena",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/athena.html#client"
- },
- {
- "text": "Creating tables in Athena - Creating tables using AWS Glue or the Athena console",
- "link": "https://docs.aws.amazon.com/athena/latest/ug/creating-tables.html#creating-tables-how-to"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: same delete
."
- ]
- },
- "authors": [
- {
- "name": "Saborni Bhattacharya",
- "image": "https://drive.google.com/file/d/1AZFquOkafEQRUlrT4hKOtIbt4Cq66SHd/view?usp=sharing",
- "bio": "I am Saborni Bhattacharya and I love making technical contents on my YouTube channel - https://www.youtube.com/channel/UCpYl6SiNRBfcZoi4EKqIwog. Here is my blog link as well - https://learnandexplorewithsab.blogspot.com/",
- "linkedin": "https://www.linkedin.com/in/saborni-bhattacharya-5b523812a/"
- }
- ]
- }
\ No newline at end of file
diff --git a/lambda-cloudwatch/example-pattern.json b/lambda-cloudwatch/example-pattern.json
deleted file mode 100644
index 36f0273db..000000000
--- a/lambda-cloudwatch/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Create a Lambda function that sends events to EventBridge.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/lambda-eventbridge/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "author": {
- "headline": "Presented by James Beswick, Developer Advocate",
- "name": "James Beswick",
- "imageURL": "https://pbs.twimg.com/profile_images/1165718285754753025/OrGcUHER_400x400.jpg",
- "twitter": "jbesw",
- "bio": "James is a senior developer advocate for Serverless Applications at Amazon Web Services based in the US. Prior to joining AWS Ben worked in a number of different technical roles specializing in workflow Automation and web development."
- }
-}
diff --git a/lambda-comprehend/example-pattern.json b/lambda-comprehend/example-pattern.json
deleted file mode 100644
index 04dc6c352..000000000
--- a/lambda-comprehend/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Sentiment analysis with Lambda and Comprehend",
- "description": "Create a Lambda function that calls Comprehend for sentiment analysis via the Boto3 SDK.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "services": {
- "from": "Lambda",
- "to": "Comprehend"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern shows how to deploy a SAM template that builds a Lambda function which triggers Comprehend for sentiment analysis."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-comprehend",
- "templateURL": "https://github.com/aws-samples/serverless-patterns/main/lambda-comprehend/template.yaml",
- "projectFolder": "lambda-comprehend",
- "templateFile": "lambda-comprehend/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Using AWS Lambda and Amazon Comprehend for sentiment analysis",
- "link": "https://aws.amazon.com/blogs/compute/using-aws-lambda-and-amazon-comprehend-for-sentiment-analysis/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name {STACK_NAME}"
- ]
- },
- "author": [
- {
- "headline": "Presented by Tommy Whelan",
- "name": "Tommy Whelan",
- "image": "https://phonetool.amazon.com/users/whelat",
- "bio": "Data/ ML Engineer @ AWS"
- }
- ]
-}
diff --git a/lambda-destinations-cdk/example-pattern.json b/lambda-destinations-cdk/example-pattern.json
deleted file mode 100644
index e6af786bd..000000000
--- a/lambda-destinations-cdk/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Lambda Destinations to Lambda and SQS",
- "description": "Lambda function that on success sends message to another function and on failure to SQS using Lambda destinations",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample proyect shows how to create a Lambda function that on success sends message to another function and on failure to SQS using Lambda destinations "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-destinations-cdk",
- "templateURL": "serverless-patterns/lambda-destinations-cdk",
- "projectFolder": "lambda-destinations-cdk",
- "templateFile": "cdk/async-functions.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing AWS Lambda Destinations",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-destinations/"
- },
- {
- "text": "Asynchronous invocation",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "https://marcia.dev/images/marcia_profile.jpg",
- "bio": "AWS Developer Advocate, AWS Serverless",
- "linkedin": "https://www.linkedin.com/in/marciavillalba/",
- "twitter": "https://twitter.com/mavi888uy"
- }
- ]
-}
diff --git a/lambda-destinations-sam/example-pattern.json b/lambda-destinations-sam/example-pattern.json
deleted file mode 100644
index 7bc222b7f..000000000
--- a/lambda-destinations-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Lambda Destinations to Lambda and SQS with SAM",
- "description": "Lambda function that on success sends message to another function and on failure to SQS using Lambda destinations with SAM",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Lambda function that on success sends message to another function and on failure to SQS using Lambda destinations with SAM.",
- "The AWS SAM template deploys the resources and the IAM permissions required to run the application."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-destinations-sam",
- "templateURL": "serverless-patterns/lambda-destinations-sam",
- "projectFolder": "lambda-destinations-sam",
- "templateFile": "lambda-destinations-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda Destinations",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-destinations/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Omar Rosadio",
- "image": "https://avatars.githubusercontent.com/u/10565035",
- "bio": "Cloud Engineer / AWS Community Builder in Serverless category.",
- "linkedin": "omaralonsorosadioportilla",
- "twitter": "@omarrosadio"
- }
- ]
-}
\ No newline at end of file
diff --git a/lambda-dynamodb-rust/example-pattern.json b/lambda-dynamodb-rust/example-pattern.json
deleted file mode 100644
index 9aad5ce67..000000000
--- a/lambda-dynamodb-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS Lambda To Amazon DynamoDB",
- "description": "This pattern creates a Lambda function that persist data into DynamoDB",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates a Lambda function that persist data into DynamoDB"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-dynamodb-rust",
- "templateURL": "serverless-patterns/lambda-dynamodb-rust",
- "projectFolder": "lambda-dynamodb-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon DynamoDB",
- "link": "https://aws.amazon.com/dynamodb/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-ecr/example-pattern.json b/lambda-ecr/example-pattern.json
deleted file mode 100644
index a0627ca87..000000000
--- a/lambda-ecr/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Lambda function with ECR Image",
- "description": "Create a Lambda function with a container image",
- "language": "YAML",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template will create a lambda function running with an ECR container image.",
- "You will need to already have the ECR image created in your account"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-ecr",
- "templateURL": "serverless-patterns/lambda-ecr",
- "projectFolder": "lambda-ecr",
- "templateFile": "lambda-ecr/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with Lambda container images",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/images-create.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Enter the Image URI in the parameters of the template. Once deployed, you can invoke the Lambda function."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer in Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/lambda-elasticache-integrationpattern-cdk/example-pattern.json b/lambda-elasticache-integrationpattern-cdk/example-pattern.json
deleted file mode 100644
index cb3bac30b..000000000
--- a/lambda-elasticache-integrationpattern-cdk/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "AWS Lamda to Amazon ElastiCache integration pattern",
- "description": "Create a Redis Cluster in Amazon ElastiCache and read write with a Lambda function.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Users may want to connect to ElastiCache from their core Lambda function for use cases that involve fast read-write operations and improve latency of applications.",
- "In an application like a leader board, queue/wait-list , API rate limiting & quota management, etc. that are built on Serverless platform , the core computing Lambda function would integrate with a either Redis or Memcache on Amazon ElastiCache.",
- "This pattern provides a quick start guide to launch a Redis cluster in Amazon ElastiCache in a defined VPC and creates a Lambda function that read writes from that cache.",
- "Users can further modify the code in the Lambda function as per their requirements. You can configure Memcached by modifying the cdk config and change Lambda code appropriately."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-elasticache-integrationpattern-cdk",
- "templateURL": "serverless-patterns/lambda-elasticache-integrationpattern-cdk",
- "projectFolder": "lambda-elasticache-integrationpattern-cdk",
- "templateFile": "lambda-elasticache-integrationpattern-cdk/lib/lambda-elasticache-integrationpattern-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "What is AWS Lambda",
- "link": "https://aws.amazon.com/lambda/"
- },
- {
- "text": "What is Amazon ElastiCache",
- "link": "https://aws.amazon.com/elasticache/"
- },
- {
- "text": "How to test Lambda with AWS Console",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/testing-functions.html"
- },
- {
- "text": "Further handson with ElastiCache",
- "link": "https://aws.amazon.com/getting-started/hands-on/boosting-mysql-database-performance-with-amazon-elasticache-for-redis/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the README.md file of GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Sushanth Kothapally",
- "image": "https://avatars.githubusercontent.com/u/10820054?v=4",
- "bio": "Sushanth is a Solutions Architect at AWS. He is passionate about solving technical problems to meet business objectives.",
- "linkedin": "sushanthkothapally"
- }
- ]
-}
diff --git a/lambda-esm-ddb-filters-sam/example-pattern.json b/lambda-esm-ddb-filters-sam/example-pattern.json
deleted file mode 100644
index 552307471..000000000
--- a/lambda-esm-ddb-filters-sam/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AWS Event Source Mapping for Lambda from Amazon DynamoDB Stream",
- "description": "Sample Lambda ESM Filter rules for DynamoDB Stream triggers",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Use this code to test out different trigger filters for your Lambda functions. You can use event filtering to control which events Lambda sends to your function for processing. You can use this template to explore and test how to configure event filtering for Amazon DynamoDB Stream messages triggering a Lambda function.",
- "The SAM template deploys multiple Lambda functions, a single stream-enabled Amazon DynamoDB Table and the permissions required to run the application. The template enforces 3 days retention period for all AWS Lambda CloudWatch logs. All AWS Lambda functions are deployed to NodeJS 18 runtime running on ARM64 processors powered by AWS Graviton."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-esm-ddb-filters-sam/",
- "templateURL": "serverless-patterns/lambda-esm-ddb-filters-sam",
- "projectFolder": "lambda-esm-ddb-filters-sam",
- "templateFile": "lambda-esm-ddb-filters-sam/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Lambda event filtering",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "headline": "Testing",
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "headline": "Cleanup",
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
."
- ]
- },
- "authors": [
- {
- "name": "Dmitry Gulin",
- "image": "https://s.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a",
- "bio": "Senior Modernization Architect, AWS",
- "linkedin": "dmitry-gulin"
- }
- ]
-}
diff --git a/lambda-esm-kinesis-filters-sam/example-pattern.json b/lambda-esm-kinesis-filters-sam/example-pattern.json
deleted file mode 100644
index ae0a9ddfb..000000000
--- a/lambda-esm-kinesis-filters-sam/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AWS Event Source Mapping for Lambda from Amazon Kinesis Data Stream",
- "description": "Sample Lambda ESM Filter rules for Amazon Kinesis Data Stream triggers",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Use this code to test out different trigger filters for your Lambda functions. You can use event filtering to control which events Lambda sends to your function for processing. You can use this template to explore and test how to configure event filtering for Amazon Kinesis messages triggering a lambda function.",
- "The SAM template deploys multiple Lambda function, a single Kinesis Data Stream and the permissions required to run the application. The template enforces 3 days retention period for all AWS Lambda CloudWatch logs. All AWS Lambda functions are deployed to NodeJS 18 runtime running on ARM64 processors powered by AWS Graviton."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-esm-kinesis-filters-sam/",
- "templateURL": "serverless-patterns/lambda-esm-kinesis-filters-sam",
- "projectFolder": "lambda-esm-kinesis-filters-sam",
- "templateFile": "lambda-esm-kinesis-filters-sam/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Lambda event filtering",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "headline": "Testing",
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "headline": "Cleanup",
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
."
- ]
- },
- "authors": [
- {
- "name": "Dmitry Gulin",
- "image": "https://s.gravatar.com/avatar/223055bd132d244f6a96c3aef7453a5a",
- "bio": "Modernization Architect, AWS",
- "linkedin": "dmitry-gulin"
- }
- ]
-}
diff --git a/lambda-esm-msk-filters-sam/example-pattern.json b/lambda-esm-msk-filters-sam/example-pattern.json
deleted file mode 100644
index 9e8cdabed..000000000
--- a/lambda-esm-msk-filters-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Lambda event filtering using event source mapping for Amazon MSK",
- "description": "Sample Lambda ESM Filter rules for Amazon Managed Streaming for Apache Kafka (Amazon MSK)",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Use this code to test out different trigger filters for your Lambda functions. You can use event filtering to control which events Lambda sends to your function for processing. ",
- "Use this template to explore and test how to configure event filtering for Amazon MSK messages triggering a lambda function. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-esm-msk-filters-sam/",
- "templateURL": "serverless-patterns/lambda-esm-msk-filters-sam",
- "projectFolder": "lambda-esm-msk-filters-sam",
- "templateFile": "lambda-esm-msk-filters-sam/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Lambda event filtering",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --stack-name lambda-msk-esm-stack --resolve-s3 --capabilities CAPABILITY_IAM --no-fail-on-empty-changeset --parameter-overrides MSKStreamARN='ClusterARN' MSKTopicName='TopicName'"
- ]
- },
- "testing": {
- "headline": "Testing",
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "headline": "Cleanup",
- "text": [
- "1. Delete the stack: sam delete --stack-name lambda-msk-esm-stack
."
- ]
- },
- "authors": [
- {
- "name": "Nikhil Penmetsa",
- "image": "https://avatars.githubusercontent.com/u/62526133?v=4",
- "bio": "Nikhil Penmetsa is a Senior Solutions Architect based out of Portland, OR.",
- "linkedin": "nikhilpenmetsa",
- "twitter": "nikhilpen"
- }
- ]
-}
\ No newline at end of file
diff --git a/lambda-esm-rabbitmq-filters-sam/example-pattern.json b/lambda-esm-rabbitmq-filters-sam/example-pattern.json
deleted file mode 100644
index 5e18f1b68..000000000
--- a/lambda-esm-rabbitmq-filters-sam/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "AWS Event Source Mapping for Lambda from AmazonMQ RabbitMQ",
- "description": "Sample Lambda ESM Filter rules for RabbitMQ triggers",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Use this code to test out different trigger filters for your Lambda functions. You can use event filtering to control which events Lambda sends to your function for processing. ",
- "Use this template to explore and test how to configure event filtering for AmazonMQ RabbitMQ messages triggering a lambda function. ",
- "The SAM template deploys multiple Lambda consumer functions, an MQ broker and the permissions required to run the application. ",
- "The template also deploys an additional helper Lambda function used for creating the RabbitMQ Queues and pushing messages to it for testing purposes."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-esm-rabbitmq-filters-sam/",
- "templateURL": "serverless-patterns/lambda-esm-rabbitmq-filters-sam",
- "projectFolder": "lambda-esm-rabbitmq-filters-sam",
- "templateFile": "lambda-esm-rabbitmq-filters-sam/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Lambda event filtering",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "headline": "Testing",
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "headline": "Cleanup",
- "text": [
- "1. Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Tsvetko Tsenkov",
- "image": "https://avatars.githubusercontent.com/u/27500154?v=4",
- "bio": "Tsvetko is a Senior Partner Solutions Architect based out of Atlanta, GA.",
- "linkedin": "tsvetko-tsenkov-6501413",
- "twitter": "cvetko_cenkov"
- }
- ]
-}
diff --git a/lambda-esm-sqs-filters-sam/example-pattern.json b/lambda-esm-sqs-filters-sam/example-pattern.json
deleted file mode 100644
index aebcb5ac5..000000000
--- a/lambda-esm-sqs-filters-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "AWS Event Source Mapping for Lambda from Amazon SQS",
- "description": "Sample Lambda ESM Filter rules for SQS triggers",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Use this code to test out different trigger filters for your Lambda functions. You can use event filtering to control which events Lambda sends to your function for processing. You can use this template to explore and test how to configure event filtering for SQS messages triggering a lambda function.",
- "The SAM template deploys multiple Lambda function, multiple SQS queues and the permissions required to run the application. The template also deploys an SNS topic that helps automate the testing of the pattern."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-esm-sqs-filters-sam/",
- "templateURL": "serverless-patterns/lambda-esm-sqs-filters-sam",
- "projectFolder": "lambda-esm-sqs-filters-sam",
- "templateFile": "lambda-esm-sqs-filters-sam/template.yaml"
- }
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Lambda event filtering",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "headline": "Testing",
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "headline": "Cleanup",
- "text": [
- "1. Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Tsvetko Tsenkov",
- "image": "https://avatars.githubusercontent.com/u/27500154?v=4",
- "bio": "Tsvetko is a Senior Partner Solutions Architect based out of Atlanta, GA.",
- "linkedin": "tsvetko-tsenkov-6501413",
- "twitter": "cvetko_cenkov"
- }
- ]
-}
diff --git a/lambda-eventbridge-java/example-pattern.json b/lambda-eventbridge-java/example-pattern.json
deleted file mode 100644
index f1b54a859..000000000
--- a/lambda-eventbridge-java/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Publish events to EventBridge.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "Create a Lambda function that sends events to EventBridge.",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge-java",
- "templateURL": "serverless-patterns/lambda-eventbridge-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect, AWS"
- }
- ]
-}
diff --git a/lambda-eventbridge-rust/example-pattern.json b/lambda-eventbridge-rust/example-pattern.json
deleted file mode 100644
index d0efe6097..000000000
--- a/lambda-eventbridge-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS Lambda to Amazon EventBridge",
- "description": "This pattern creates a Lambda function that publishes an event to EventBridge. ",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates a Lambda function that publishes an event to EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge-rust",
- "templateURL": "serverless-patterns/lambda-eventbridge-rust",
- "projectFolder": "lambda-eventbridge-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge",
- "link": "https://aws.amazon.com/eventbridge/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-eventbridge-sls/example-pattern.json b/lambda-eventbridge-sls/example-pattern.json
deleted file mode 100644
index f5c7b6328..000000000
--- a/lambda-eventbridge-sls/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Lambda to EventBridge",
- "description": "Publish events to EventBridge.",
- "language": "Python",
- "level": "200",
- "framework": "Serverless",
- "introBox": {
- "headline": "Create a Lambda function that sends events to EventBridge.",
- "text": [
- "The Serverless template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge-sls",
- "templateURL": "serverless-patterns/lambda-eventbridge-sls",
- "projectFolder": "lambda-eventbridge-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": ["serverless deploy --verbose"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: serverless remove --verbose
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Alex Nelson",
- "bio": "Senior Solutions Architect, AWS"
- }
- ]
-}
diff --git a/lambda-eventbridge-sns-sam/example-pattern.json b/lambda-eventbridge-sns-sam/example-pattern.json
deleted file mode 100644
index 3f08398c9..000000000
--- a/lambda-eventbridge-sns-sam/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "AWS Lambda to Amazon Eventbridge to SNS",
- "description": "Create multiple Amazon Eventbridge Buses and Rules to orchestrate events to trigger Multiple SNS Topics using event patterns.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The AWS SAM template deploys three EventBridge Buses, six EventBridge Rules (2 per Bus), four SNS Topics, three SQS queues and a Lambda function. The lambda function is an event generator which sends events to EventBridge Buses that trigger appropriate Rules sending the payload to the appropriate SNS Topic. SQS queues are attached to the Rules as Dead Letter Queues. Appropriate permissions are granted to EventBridge to trigger the SNS Topics and the Lambda function to put events in the EventBridge.",
- "To make this easier to understand, here is an example. Countries report cross-border transactions to their respective Reserve/Central Bank. For simplicity, transactions originate from bank branches or ATM (automatic teller machines) as sub-domains (source) from all banks. For simplicity we use three EventBridge Buses - (bluebank, redbank and greenbank). The 'DetailType' is filtering for 'transaction type' and the 'Detail' section filters the 'Yes/No' reportable field. Based on these combinations, events trigger different rules and send transaction payloads to SNS Topics of the ReserveBank and/or the Transaction Warehouses of the respective bank's SNS Topics.",
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge-sns-sam",
- "templateURL": "serverless-patterns/lambda-eventbridge-sns-sam",
- "projectFolder": "lambda-eventbridge-sns-sam",
- "templateFile": "lambda-eventbridge-sns-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Permissions for Amazon EventBridge event buses",
- "link": "https://docs.amazonaws.cn/en_us/eventbridge/latest/userguide/eb-event-bus-perms.html#eb-event-bus-example-policy-cross-account"
- },
- {
- "text": "Content filtering in Amazon EventBridge event patterns",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns-content-based-filtering.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "1. From the output, get the 4 SNS Topic ARNs and subscribe 4 email addresses to the SNS Topics using this command structure.",
- "aws sns subscribe --topic-arn ENTER_YOUR_TOPIC_ARN --protocol email-json --notification-endpoint ENTER_YOUR_EMAIL_ADDRESS",
- "2. Click the confirmation link delivered to your emails to verify the endpoint.",
- "3. Send an event to EventBridge using the Lamdba function:",
- "- Get the 3 ARNs of the EventBridge Buses from the Output.",
- "- Open the Lambda function code in your Lambda console and replace 'bus_a', 'bus_b' and 'bus_c' with the ARNs of the Buses created the SAM template.",
- "- Deploy the function and 'Test' on the Console",
- "- Alternatively, get the function name from the Cloud Formation Output and use the following CLI command to invoke the function a few times:",
- "aws lambda invoke --function-name myfunction response.json",
- "4. The function will randomly choose any of the 3 Buses and send an event. The events will be classified 'reportable' or 'non-reportable'. All 'reportable' events trigger notification with the payload to the 'ReserveBank SNS Topic' and another notification to the appropriate Bank Warehouse matching the Bus selected. All 'non-reportable' events do not trigger the ReserveBank SNS Topic but trigger the respective Bank Warehouse matching the Bus selected."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME.",
- "Confirm the stack has been deleted"
- ]
- },
- "authors": [
- {
- "name": "Sylvester Kachi",
- "image": "link-to-your-photo.jpg",
- "bio": "Sylvester is a Solutions Architect at AWS",
- "linkedin": "https://www.linkedin.com/in/kachi-sylvester-3684ab32/"
- }
- ]
-}
diff --git a/lambda-eventbridge-terraform/example-pattern.json b/lambda-eventbridge-terraform/example-pattern.json
deleted file mode 100644
index 1aa1050b7..000000000
--- a/lambda-eventbridge-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "AWS Lambda to Amazon EventBridge",
- "description": "This pattern creates a Lambda function that publishes an event to EventBridge.",
- "language": "",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This demonstrates a lambda function that publishes events to an EventBridge"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge-terraform",
- "templateURL": "serverless-patterns/lambda-eventbridge-terraform",
- "projectFolder": "lambda-eventbridge-terraform",
- "templateFile": "lambda-eventbridge-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/lambda-extension-parameter-store-cdk/example-pattern.json b/lambda-extension-parameter-store-cdk/example-pattern.json
deleted file mode 100644
index ce673b1bc..000000000
--- a/lambda-extension-parameter-store-cdk/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Lambda Extension for SSM Parameter Store with CDK (Typescript)",
- "description": "Read the Parameter Store value using Parameter Store Extension for Lambda",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to access SSM Parameter Store value from Lambda using Lambda extension."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-extension-parameter-store-cdk",
- "templateURL": "serverless-patterns/lambda-extension-parameter-store-cdk",
- "projectFolder": "lambda-extension-parameter-store-cdk",
- "templateFile": "lambda-extension-parameter-store-cdk/lambda-extension-parameter-store-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Parameter Store Lambda Extension",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/ps-integration-lambda-extensions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all --parameters parameterStoreExtensionArn='[Parameter Store Lambda extension layer ARN]'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusisast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
diff --git a/lambda-function-url-cdk/example-pattern.json b/lambda-function-url-cdk/example-pattern.json
deleted file mode 100644
index 1bc903785..000000000
--- a/lambda-function-url-cdk/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Lambda function URL",
- "description": "Create a Lambda Function with a Function URL",
- "language": "Typescript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Bootstrap a Lambda fucntion with an function URL"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-function-url-cdk",
- "templateURL": "serverless-patterns/lambda-function-url-cdk",
- "projectFolder": "lambda-function-url-cdk"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda functions URLs",
- "link": "https://aws.amazon.com/blogs/aws/announcing-aws-lambda-function-urls-built-in-https-endpoints-for-single-function-microservices/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "link-to-your-photo.jpg",
- "bio": "Senior Developer Advocate",
- "linkedin": "linked-in-ID",
- "twitter": "@mavi888uy"
- }
- ]
-}
diff --git a/lambda-function-url-sls/example-pattern.json b/lambda-function-url-sls/example-pattern.json
deleted file mode 100644
index f35df5e72..000000000
--- a/lambda-function-url-sls/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Lambda Function URL",
- "description": "Create a Lambda Function URL.",
- "language": "TypeScript",
- "level": "100",
- "framework": "Serverless Framework",
- "services": {
- "from": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a dedicated, public HTTPS endpoint for your Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-function-url-sls",
- "templateURL": "serverless-patterns/lambda-function-url-sls",
- "projectFolder": "lambda-function-url-sls",
- "templateFile": "lambda-function-url-sls/serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating and managing Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/urls-configuration.html"
- },
- {
- "text": "Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices",
- "link": "https://aws.amazon.com/blogs/aws/announcing-aws-lambda-function-urls-built-in-https-endpoints-for-single-function-microservices/"
- },
- {
- "text": "AWS Lambda Function URLs with Serverless Framework",
- "link": "https://www.serverless.com/blog/aws-lambda-function-urls-with-serverless-framework"
- }
- ]
- },
- "deploy": {
- "text": [
- "sls deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sls remove
."
- ]
- },
- "authors": [
- {
- "name": "Wayne Greeley",
- "image": "",
- "bio": "AWS Community Builder",
- "linkedin": "",
- "twitter": ""
- }
- ]
-}
-
diff --git a/lambda-function-url-terraform/example-pattern.json b/lambda-function-url-terraform/example-pattern.json
deleted file mode 100644
index bc4fc0bbc..000000000
--- a/lambda-function-url-terraform/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Lambda Function URL",
- "description": "Creates a Lambda function with a function URL",
- "language": "Node.js",
- "level": "100",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Lambda Function URL for a Lambda function. You can use Function URLs to create a a dedicated HTTP(S) endpoint for your Lambda function. Use the FunctionEndpointURL when testing your Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-function-url-terraform",
- "templateURL": "serverless-patterns/lambda-function-url-terraform",
- "projectFolder": "lambda-function-url-terraform",
- "templateFile": "lambda-function-url-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Overview of Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html"
- },
- {
- "text": "Creating and managing Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/urls-configuration.html"
- },
- {
- "text": "Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices",
- "link": "https://aws.amazon.com/blogs/aws/announcing-aws-lambda-function-urls-built-in-https-endpoints-for-single-function-microservices/"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply --auto-approve"
- ]
- },
- "testing": {
- "text": [
- "Use the Terraform Output FunctionURLEndpoint from the `terraform apply` command to test your Lambda function in a browser or API testing tool."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy --auto-approve."
- ]
- },
- "authors": [
- {
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }
- ]
-}
diff --git a/lambda-function-url/example-pattern.json b/lambda-function-url/example-pattern.json
deleted file mode 100644
index c30ef545c..000000000
--- a/lambda-function-url/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda Function URL",
- "description": "Create a Lambda Function URL.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Lambda Function URL for a Lambda function. You can use Function URLs to create a a dedicated HTTP(S) endpoint for your Lambda function. Use the FunctionEndpointURL when testing your Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-athena-cdk-python",
- "templateURL": "serverless-patterns/sfn-athena-cdk-python",
- "projectFolder": "sfn-athena-cdk-python",
- "templateFile": "sfn_athena_cdk_python/sfn_athena_cdk_python_stack.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating and managing Lambda function URLs",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/urls-configuration.html"
- },
- {
- "text": "Announcing AWS Lambda Function URLs: Built-in HTTPS Endpoints for Single-Function Microservices",
- "link": "https://aws.amazon.com/blogs/aws/announcing-aws-lambda-function-urls-built-in-https-endpoints-for-single-function-microservices/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Rohan Mehta",
- "image": "https://internal-cdn.amazon.com/badgephotos.amazon.com/?uid=merohan",
- "bio": "Associated Cloud Application Architect at AWS Professional Services",
- "linkedin": "https://www.linkedin.com/in/rohan-mehta-1052b570/",
- "twitter": "https://twitter.com/rohanmehta_dev"
- }
- ]
-}
diff --git a/lambda-functionurl-dynamodb-sam-go/example-pattern.json b/lambda-functionurl-dynamodb-sam-go/example-pattern.json
deleted file mode 100644
index 53d76d1ff..000000000
--- a/lambda-functionurl-dynamodb-sam-go/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "AWS Lambda Function URL to Amazon DynamoDB",
- "description": "Create a Lambda function with a Lambda Function URL that recieves a payload and inserts a record into a DynamoDB table.",
- "language": "Go",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"200",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "dynamodb"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "When an HTTP `POST` request is sent to the Lambda Function URL endpoint, the AWS Lambda function is invoked and inserts an item into the Amazon DynamoDB table."
- ]
- },
- "deploy": {
- "text": [
- "sam build && sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "sam delete"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-functionurl-dynamodb-sam-go",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-functionurl-dynamodb-sam-go/README.md"
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- ]
- },
- "author": {
- "headline": "Presented by Abhishek Gupta, Principal Developer Advocate at AWS",
- "name": "Abhishek Gupta",
- "twitter": "abhi_tweeter",
- "linkedin":"https://www.linkedin.com/in/abhirockzz/",
- "imageURL":"https://abhirockzz.github.io/icon.jpg"
- }
- }
-
\ No newline at end of file
diff --git a/lambda-glue-s3/example-pattern.json b/lambda-glue-s3/example-pattern.json
deleted file mode 100644
index 740a0a11d..000000000
--- a/lambda-glue-s3/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Lambda to Glue to S3",
- "description": "Create a lambda function to invoke a AWS Glue job to run the task and save the output file in S3",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application deploys a Lambda function, that takes in a payload and trigger a AWS Glue job synchronously.",
- "The AWS glue job then performs the assigned task to convert a CSV file to Parquet and uploads the output file in S3. The application contains the minimum IAM permissions required to run the workflow and Glue job.",
- "This pattern deploys one Lambda Functions, one S3 Buckets and one Glue ETL Job."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-glue-s3",
- "templateURL": "serverless-patterns/lambda-glue-s3",
- "projectFolder": "lambda-glue-s3",
- "templateFile": "lambda-glue-s3/app.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "About AWS Glue",
- "link": "https://aws.amazon.com/glue"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Harshitha Shashidhar",
- "image": "https://phonetool.amazon.com/users/harshihs",
- "bio": "Harshitha Shashidhar is an Cloud Application architect who loves to build the serverless applications at scale."
- },
- {
- "name": "Shruti Arora",
- "image": "https://phonetool.amazon.com/users/sarora",
- "bio": "Shruti is a Cloud Application Architect with AWS Professional Services Team and is passionate about serverless development in Cloud using Data Processing and AI/ML services."
- }
- ]
-}
\ No newline at end of file
diff --git a/lambda-inspector-scans/example-pattern.json b/lambda-inspector-scans/example-pattern.json
deleted file mode 100644
index 8aebd934e..000000000
--- a/lambda-inspector-scans/example-pattern.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "title": "Event driven vulnerability scanning with EventBridge and Lambda",
- "description": "This pattern listens to Amazon Inspector events and triggers downstream consumers",
- "language": "YAMl",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": ["Listening to Amazon Inspector events a rule is set up to trigger a downstream consumer (Lambda function). Every scan complete of Lambda function triggers the consumer allowing automation around vulnerability scanning."]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/lambda-inspector-scans",
- "templateURL": "serverless-patterns/lambda-inspector-scans",
- "projectFolder": "lambda-inspector-scans",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Inspector Now Scans AWS Lambda Functions for Vulnerabilities",
- "link": "https://aws.amazon.com/blogs/aws/amazon-inspector-now-scans-aws-lambda-functions-for-vulnerabilities/"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the README in the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.png",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/lambda-iot-sam/example-pattern.json b/lambda-iot-sam/example-pattern.json
deleted file mode 100644
index e40bb3fe5..000000000
--- a/lambda-iot-sam/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AWS Lambda to AWS IoT Core",
- "description": "AWS Lambda function publishing to AWS IoT Core topic.",
- "level": "200",
- "services": {
- "from": "lambda",
- "to": "iot"
- },
- "language": "Node.js",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS SAM stack with an AWS IoT Core thing and a Lambda function.",
- "The Lambda function publishes a message to the IoT topic which you can view in the console."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "ttps://github.com/aws-samples/serverless-patterns/tree/main/lambda-iot-sam",
- "templateURL": "serverless-patterns/lambda-iot-sam",
- "projectFolder": "lambda-iot-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "IoT Rule",
- "link": "https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [{
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }]
-}
diff --git a/lambda-jbang/example-pattern.json b/lambda-jbang/example-pattern.json
deleted file mode 100644
index 30141e4fd..000000000
--- a/lambda-jbang/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AWS Lambda function using JBang",
- "description": "Create a Java Lambda function using JBang",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "A sample project showcasing a self-contained JBang application as a Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-jbang",
- "templateURL": "serverless-patterns/lambda-jbang",
- "projectFolder": "lambda-jbang",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "JBang website",
- "link": "https://www.jbang.dev/"
- },
- {
- "text": "JBang IDE support",
- "link": "https://www.jbang.dev/ide/#main"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --stack-name lambda-jbang
"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name lambda-jbang
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'lambda-jbang')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Marcin Szałomski",
- "bio": "Software Architect at Hapag-Lloyd AG",
- "twitter": "baldram",
- "linkedin": "https://www.linkedin.com/in/marcin-szalomski/"
- }
- ]
-}
\ No newline at end of file
diff --git a/lambda-kinesis-lambda/example-pattern.json b/lambda-kinesis-lambda/example-pattern.json
deleted file mode 100644
index 125d2626f..000000000
--- a/lambda-kinesis-lambda/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Lambda to Kinesis Data Stream to Kinesis",
- "description": "Create a Lambda function to push record to a Kinesis Data Stream and create another function to process those events from the stream.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use serverless producer and consumer for a Kinesis Data Stream",
- "A producer Lambda function puts data into the Kinesis Data Stream while consumer Lambda function gets trigger when there is data in the stream",
- "This pattern deploys two Lambda Functions and one Kinesis Data Stream."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-kinesis-lambda",
- "templateURL": "serverless-patterns/lambda-kinesis-lambda",
- "projectFolder": "lambda-kinesis-lambda",
- "templateFile": "lambda-kinesis-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: Using AWS Lambda with Amazon Kinesis",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis-example.html"
- },
- {
- "text": "Boto3 client for Kinesis",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/kinesis.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: same delete
."
- ]
- },
- "authors": [
- {
- "name": "Saborni Bhattacharya",
- "image": "https://drive.google.com/file/d/1AZFquOkafEQRUlrT4hKOtIbt4Cq66SHd/view?usp=sharing",
- "bio": "I am Saborni Bhattacharya and I love making technical contents on my YouTube channel - https://www.youtube.com/channel/UCpYl6SiNRBfcZoi4EKqIwog. Here is my blog link as well - https://learnandexplorewithsab.blogspot.com/",
- "linkedin": "https://www.linkedin.com/in/saborni-bhattacharya-5b523812a/"
- }
- ]
- }
\ No newline at end of file
diff --git a/lambda-pinpoint/example-pattern.json b/lambda-pinpoint/example-pattern.json
deleted file mode 100644
index ce1e01959..000000000
--- a/lambda-pinpoint/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Lambda to Pinpoint",
- "description": "Create a Lambda function that sends SMS via Pinpoint.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "lambda",
- "to": "eventbridge"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function with permission to publish events to EventBridge. The Lambda function publishes an event to the default bus in EventBridge when invoked."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-eventbridge",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/lambda-eventbridge/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Integrating Amazon EventBridge into your serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/integrating-amazon-eventbridge-into-your-serverless-applications/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "author": {
- "headline": "Presented by James Beswick, Developer Advocate",
- "name": "James Beswick",
- "imageURL": "https://pbs.twimg.com/profile_images/1165718285754753025/OrGcUHER_400x400.jpg",
- "twitter": "jbesw",
- "bio": "James is a senior developer advocate for Serverless Applications at Amazon Web Services based in the US. Prior to joining AWS Ben worked in a number of different technical roles specializing in workflow Automation and web development."
- }
-}
diff --git a/lambda-powershell-runtime-sam/example-pattern.json b/lambda-powershell-runtime-sam/example-pattern.json
deleted file mode 100644
index f4f1edebe..000000000
--- a/lambda-powershell-runtime-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "Lambda PowerShell Runtime",
- "description": "Lambda Custom Runtime for PowerShell.",
- "language": "PowerShell",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Lambda PowerShell custom runtime for running native PowerShell on Lambda. The pattern includes am example Lambda function in PowerShell."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/awslabs/aws-lambda-powershell-runtime",
- "templateURL": "serverless-patterns/lambda-powershell-runtime-sam",
- "projectFolder": "lambda-powershell-runtime-sam"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing the PowerShell custom runtime for AWS Lambda",
- "link": "https://aws.amazon.com/blogs/compute/introducing-the-powershell-custom-runtime-for-aws-lambda/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Julian Wood",
- "image": "/assets/images/resources/jrwood.jpg",
- "bio": "Julian Wood helps developers and builders learn about and love how serverless technologies can transform the way they build and run applications. I was an infrastructure architect and manager in global enterprises and start-ups for more than 25 years before going all in on serverless at AWS.",
- "linkedin": "woodjulian",
- "twitter": "@julian_wood"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/lambda-powertools-secretsmanager-cdk/example-pattern.json b/lambda-powertools-secretsmanager-cdk/example-pattern.json
deleted file mode 100644
index 61dd48468..000000000
--- a/lambda-powertools-secretsmanager-cdk/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Lambda Secrets Manager with PowerTools",
- "description": "Lambda function that uses PowerTools to get Secrets Manager secret and call an API.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an AWS Lambda function to call a protected API endpoint. It is integrated with AWS SecretsManager via AWS PowerTools, and is deployed with the AWS Cloud Development Kit (AWS CDK) in Python."
- ]
- },
- "gitHub": {
- "template": {
- "projectFolder": "lambda-powertools-secretsmanager-cdk/src",
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-powertools-secretsmanager-cdk",
- "templateURL": "serverless-patterns/lambda-powertools-secretsmanager-cdk",
- "templateFile": "app.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda Function PowerTools",
- "link": "https://awslabs.github.io/aws-lambda-powertools-python/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Luke Viens",
- "image": "",
- "bio": "Cloud application developer at AWS.",
- "linkedin": "",
- "twitter": ""
- },
- {
- "name": "Sakthivel Chellapparimanam",
- "image": "",
- "bio": "AWS - Cloud Application Architect",
- "linkedin": "https://www.linkedin.com/in/srcsakthivel",
- "twitter": "@srcsakthivel"
- }
- ]
-}
diff --git a/lambda-rekognition-rust/example-pattern.json b/lambda-rekognition-rust/example-pattern.json
deleted file mode 100644
index f9547e1d8..000000000
--- a/lambda-rekognition-rust/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "AWS Lambda to Amazon Rekognition",
- "description": "This pattern demonstrates how an event can be used to trigger a Lambda function and run Image analysis using Amazon Rekognition.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Upload an object to the deployed S3 bucket.",
- "The Lambda function is invoked with the event from S3, routed via EventBridget.",
- "The Lambda function uses Amazon Rekognition."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-rekognition-rust",
- "templateURL": "serverless-patterns/lambda-rekognition-rust",
- "projectFolder": "lambda-rekognition-rust",
- "templateFile": "lambda-rekognition-rust/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Rekognition",
- "link": "https://aws.amazon.com/rekognition/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-s3-async-lambda/example-pattern.json b/lambda-s3-async-lambda/example-pattern.json
deleted file mode 100644
index 10fc591be..000000000
--- a/lambda-s3-async-lambda/example-pattern.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "title": "Asynchronous invocation between Lambda functions with S3 when payload size is large",
- "description": "Create a Lambda function that invoke another Lambda function asynchronously. When the payload exceed Lambda asynchronous invocation payload quota, payload is saved to S3 bucket. Then S3 trigger second asynchronous Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use a Lambda function to invoke another Lambda function asynchronously.",
- "The SAM template provided deploys two Lambda functions. First Lambda function invokes second Lambda function asynchronously.",
- "When the payload size is exceed the invocation payload size quota, then payload is saved to S3 bucket.",
- "S3 bucket `s3:ObjectCreated` event triggers second Lambda function.",
- "Using Lambda function asynchronous invocation saves time and cost."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-s3-async-lambda",
- "templateURL": "serverless-patterns/lambda-s3-async-lambda",
- "projectFolder": "lambda-s3-async-lambda",
- "templateFile": "lambda-s3-async-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Lambda Developer Guide - Invoking functions - Asynchronous invocation",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html"
- },
- {
- "text": "AWS Lambda Developer Guide - Lambda Quotas",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#function-configuration-deployment-and-execution"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Seoyeon Park",
- "image": "https://avatars.githubusercontent.com/SeoyeonPark",
- "bio": "Seoyeon is an Associate Application Developer at AWS Professional Services based in Seoul.",
- "linkedin": "https://www.linkedin.com/in/seoyeonpark8080"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/lambda-s3-polly-cdk/example-pattern.json b/lambda-s3-polly-cdk/example-pattern.json
deleted file mode 100644
index 84e22e911..000000000
--- a/lambda-s3-polly-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "S3 to Lambda to Polly",
- "description": "Create a Lambda with an S3 object created trigger that starts an Amazon Polly Task and puts the results in anoter S3 Bucket",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS Cloud Development Kit (AWS CDK) template that deploys a Lambda Function with an S3 object created trigger to start an Amazon Polly Task and place the results in another S3 bucket.",
- "This pattern deploys one Lambda Function and two S3 Buckets."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-s3-polly-cdk",
- "templateURL": "serverless-patterns/lambda-s3-polly-cdk",
- "projectFolder": "pattern",
- "templateFile": "assets/lambda-s3-polly-cdk.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using an Amazon S3 trigger to invoke a Lambda function",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html"
- },
- {
- "text": "Guidelines and quotas - Amazon Polly",
- "link": "https://docs.aws.amazon.com/polly/latest/dg/limits.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Kranthi Kiran A",
- "image": "https://media.licdn.com/dms/image/C5603AQGMzL2iVESvpA/profile-displayphoto-shrink_400_400/0/1662286284377?e=1691020800&v=beta&t=p7litfMASeNBNU-Xeb7bpl5WD8KoWrlVd3Azl3_q1bg",
- "bio": "Kranthi is an Associate Cloud Developer with Amazon Web Services",
- "linkedin": "https://www.linkedin.com/in/akkiran003/"
- }
- ]
-}
diff --git a/lambda-s3-rust/example-pattern.json b/lambda-s3-rust/example-pattern.json
deleted file mode 100644
index a48cd062c..000000000
--- a/lambda-s3-rust/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS Lambda to Amazon S3",
- "description": "This SAM template creates a Lambda function that writes to an S3 bucket when invoked.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This SAM template creates a Lambda function that writes to an S3 bucket when invoked. Once you run `sam deploy --guided`, you will enter the name of the destination bucket for the objects to be stored."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-s3-rust",
- "templateURL": "serverless-patterns/lambda-s3-rust",
- "projectFolder": "lambda-s3-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon S3",
- "link": "https://aws.amazon.com/s3/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-s3-translate-cdk/example-pattern.json b/lambda-s3-translate-cdk/example-pattern.json
deleted file mode 100644
index 6986b9d17..000000000
--- a/lambda-s3-translate-cdk/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "S3 to Lambda to Translate",
- "description": "Create a Lambda with an S3 object created trigger that starts an Amazon Translate Task and puts the results in anoter S3 Bucket",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS Cloud Development Kit (AWS CDK) template that deploys a Lambda Function with an S3 object created trigger to start an Amazon Translate Task and place the results in another S3 bucket.",
- "This pattern deploys one Lambda Function and two S3 Buckets."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-s3-translate-cdk",
- "templateURL": "serverless-patterns/lambda-s3-translate-cdk",
- "projectFolder": "pattern",
- "templateFile": "lambda-s3-translate-cdk.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using an Amazon S3 trigger to invoke a Lambda function",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html"
- },
- {
- "text": "Guidelines and quotas - Amazon Translate",
- "link": "https://docs.aws.amazon.com/translate/latest/dg/what-is-limits.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Kranthi Kiran A",
- "image": "https://media.licdn.com/dms/image/C5603AQGMzL2iVESvpA/profile-displayphoto-shrink_400_400/0/1662286284377?e=1691020800&v=beta&t=p7litfMASeNBNU-Xeb7bpl5WD8KoWrlVd3Azl3_q1bg",
- "bio": "Kranthi is an Associate Cloud Developer with Amazon Web Services",
- "linkedin": "akkiran003"
- }
- ]
- }
-
diff --git a/lambda-secrets-manager-extension-python/example-pattern.json b/lambda-secrets-manager-extension-python/example-pattern.json
deleted file mode 100644
index 15b637231..000000000
--- a/lambda-secrets-manager-extension-python/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Lambda Secrets Manager Extension",
- "description": "Create a Lambda function that uses the Secrets Manager Lambda Extension.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use a Lambda function to retrieve secrets using the Secrets Manager Lambda extension in the us-east-1 region. Other regions may be used by swapping the Secrets Manager layer in the template.yaml file."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-secrets-manager-extension-python",
- "templateURL": "serverless-patterns/lambda-secrets-manager-extension-python",
- "projectFolder": "lambda-secrets-manager-extension-python",
- "templateFile": "lambda-secrets-manager-extension-python/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Secrets Manager Lambda Extension Documentation",
- "link": "https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets_lambda.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Tim Pugh",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQE_pcOIRvZiZw/profile-displayphoto-shrink_800_800/0/1599620216972?e=1671667200&v=beta&t=c9jJCkwElOTcMvmOmKeSnbfb7VhdR2Skt2EfoAD1yAw",
- "bio": "I'm a Serverless Cloud Engineer specializing in serverless event driven systems at AWS and an avid backpacker.",
- "linkedin": "www.linkedin.com/in/pugh"
- }
- ]
- }
\ No newline at end of file
diff --git a/lambda-secretsmanager-java-sam/example-pattern.json b/lambda-secretsmanager-java-sam/example-pattern.json
deleted file mode 100644
index 5e1cc023b..000000000
--- a/lambda-secretsmanager-java-sam/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Lambda Secrets Manager using Java SDK",
- "description": "Lambda function retrieving a secret from Secrets Manager using Java SDK.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern stores a secret in Secrets Manager. A Lambda function uses AWS SDK for Java to read the secret in the init phase, outside the handler."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-secretsmanager-java-sam",
- "templateURL": "serverless-patterns/lambda-secretsmanager-java-sam",
- "projectFolder": "lambda-secretsmanager-java-sam",
- "templateFile": "lambda-secretsmanager-java-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Retrieve AWS Secrets Manager secrets in Java applications",
- "link": "https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets_cache-java.html"
- }]
- },
- "build": {
- "text": [
- "sam build"
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Paras Jain",
- "image": "https://avatars.githubusercontent.com/u/583119?v=4",
- "bio": "Paras is a Technical Account Manager with AWS based out of Herndon, Virginia, USA. He is a member of Serverless Technical Field community",
- "linkedin": "parasjain01",
- "twitter": "parasjain01"
- }
- ]
-}
diff --git a/lambda-secretsmanager-node-sdkv3-sam/example-pattern.json b/lambda-secretsmanager-node-sdkv3-sam/example-pattern.json
deleted file mode 100644
index 5c94b7adb..000000000
--- a/lambda-secretsmanager-node-sdkv3-sam/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "Lambda Secrets Manager top-level await + SDKv3",
- "description": "Lambda function retrieving a secret from Secrets Manager using top-level await using AWS SDK for JavaScript v3.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern stores a secret in Secrets Manager. A Node.js Lambda function uses top-level await and the AWS SDK for Javascript v3 to read the secret in the init phase, outside the handler."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-secretsmanager-node-sdkv3-sam",
- "templateURL": "serverless-patterns/lambda-secretsmanager-node-sdkv3-sam",
- "projectFolder": "lambda-secretsmanager-node-sdkv3-sam",
- "templateFile": "lambda-secretsmanager-node-sdkv3-sam/template.yaml"
- }
- },
- "resources": {
- "build": {
- "text": [
- "sam build"
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Julian Wood",
- "image": "/assets/images/resources/jrwood.jpg",
- "bio": "Julian Wood helps developers and builders learn about and love how serverless technologies can transform the way they build and run applications. I was an infrastructure architect and manager in global enterprises and start-ups for more than 25 years before going all in on serverless at AWS.",
- "linkedin": "woodjulian",
- "twitter": "@julian_wood"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/lambda-sfn-rust/example-pattern.json b/lambda-sfn-rust/example-pattern.json
deleted file mode 100644
index 8b0fe791c..000000000
--- a/lambda-sfn-rust/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Invoke an AWS Step Functions workflow from AWS Lambda",
- "description": "The SAM template deploys a Lambda function, a Step Functions Express workflow, a Log group and the IAM resources required to run the application. A Lambda function uses the AWS SDK to asyncronously invoke the Express workflow, passing the event body as a string. The Express Workflow results are logged in Amazon CloudWatch Logs. The Lambda function returns the Express Workflow execution ARN and startDate.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "A Lambda function uses the AWS SDK to asyncronously invoke the Express workflow, passing the event body as a string.",
- "The Express Workflow results are logged in Amazon CloudWatch Logs.",
- "The Lambda function returns the Express Workflow execution ARN and startDate."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sfn-rust",
- "templateURL": "serverless-patterns/lambda-sfn-rust",
- "projectFolder": "lambda-sfn-rust",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://aws.amazon.com/step-functions/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-sns-filters-lambda/example-pattern.json b/lambda-sns-filters-lambda/example-pattern.json
deleted file mode 100644
index 1d929bfe0..000000000
--- a/lambda-sns-filters-lambda/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Lambda to SNS with filters to Lambda",
- "description": "Creates a Lambda function that sends a message to a SNS that contains a filter. One function gets trigger always but the other depends on the filter.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use create a SNS with filters and trigger different functions depending on the filtering."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sns-filters-lambda",
- "templateURL": "serverless-patterns/lambda-sns-filters-lambda",
- "projectFolder": "lambda-sns-filters-lambda",
- "templateFile": "src/lib/lambda-sns-filters-lambda.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS SNS",
- "link": "https://aws.amazon.com/sns/"
- },
- {
- "text": "Amazon SNS message filtering",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-message-filtering.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk delete
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "link-to-your-photo.jpg",
- "bio": "Your bio.",
- "linkedin": "linked-in-ID",
- "twitter": "twitter-handle"
- }
- ]
-}
diff --git a/lambda-sns-lambda-cdk/example-pattern.json b/lambda-sns-lambda-cdk/example-pattern.json
deleted file mode 100644
index f84e53425..000000000
--- a/lambda-sns-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Lambda to SNS to Lambda",
- "description": "Creates a Lambda function that sends a message to a SNS and then another function gets triggered when there is a new notification in the topic.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Lambda function that sends a message to an SNS topic using AWS SDK. Then another function gets trigger when a message is in the topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sns-lambda-cdk",
- "templateURL": "serverless-patterns/lambda-sns-lambda-cdk",
- "projectFolder": "lambda-sns-lambda-cdk",
- "templateFile": "src/lib/lambda-sns-lambda.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS SNS",
- "link": "https://aws.amazon.com/sns/"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk delete
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "link-to-your-photo.jpg",
- "bio": "Your bio.",
- "linkedin": "linked-in-ID",
- "twitter": "twitter-handle"
- }
- ]
-}
diff --git a/lambda-sns-sls/example-pattern.json b/lambda-sns-sls/example-pattern.json
deleted file mode 100644
index 99c7db041..000000000
--- a/lambda-sns-sls/example-pattern.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "title": "Lambda to SNS",
- "description": "Publish events to a SNS topic.",
- "language": "Python",
- "level": "200",
- "framework": "Serverless",
- "introBox": {
- "headline": "Create a Lambda function that sends events to a SNS topic.",
- "text": [
- "The Serverless template deploys a SNS topic and a Lambda function that has permission to publish events to the topic."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sns-sls",
- "templateURL": "serverless-patterns/lambda-sns-sls",
- "projectFolder": "lambda-sns-sls",
- "templateFile": "serverless.yml"
- }
- },
- "resources": {},
- "deploy": {
- "text": ["serverless deploy --verbose"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: serverless remove --verbose
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Alex Nelson",
- "bio": "Senior Solutions Architect, AWS"
- }
- ]
-}
diff --git a/lambda-sns-terraform/example-pattern.json b/lambda-sns-terraform/example-pattern.json
deleted file mode 100644
index d9bee5607..000000000
--- a/lambda-sns-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Lambda to SNS",
- "description": "Create a Lambda function that publishes to an SNS topic",
- "language": "",
- "level": "100",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The template deploys a Lambda function, an SNS topic and the IAM permissions required to run the application. The Lambda function publishes a message to the SNS topic when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sns-terraform",
- "templateURL": "serverless-patterns/lambda-sns-terraform",
- "projectFolder": "lambda-sns-terraform",
- "templateFile": "lambda-sns-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Choosing between messaging services for serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/choosing-between-messaging-services-for-serverless-applications/"
- },
- {
- "text": "Publishing Messages in Amazon SNS",
- "link": "https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/sns-examples-publishing-messages.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/lambda-sqs-java/example-pattern.json b/lambda-sqs-java/example-pattern.json
deleted file mode 100644
index 7d07cc36b..000000000
--- a/lambda-sqs-java/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Lambda to SQS",
- "description": "Create a Lambda function that publishes to an SQS queue",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys a Lambda function, an SQS queue and the IAM permissions required to run the application. The Lambda function publishes a message to the SQS queue when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sqs-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using AWS Lambda with Amazon SQS",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html"
- },
- {
- "text": "Choosing between messaging services for serverless applications.",
- "link": "https://aws.amazon.com/blogs/compute/choosing-between-messaging-services-for-serverless-applications/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "James Beswick",
- "image": "https://serverlessland.com/assets/images/resources/jbes.jpg",
- "bio": "I am a self-confessed serverless geek and enjoy helping developers build faster with serverless! I have been software developer and product manager before becoming a Developer Advocate. Ask me anything!",
- "linkedin": "jamesbeswick",
- "twitter": "@jbesw"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/lambda-sqs-rust-sam/example-pattern.json b/lambda-sqs-rust-sam/example-pattern.json
deleted file mode 100644
index 3583a5df0..000000000
--- a/lambda-sqs-rust-sam/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "AWS Lambda to Amazon SQS",
- "description": "The SAM template deploys a Lambda function, an SQS queue and the IAM permissions required to run the application. The Lambda function publishes a message to the SQS queue when invoked.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The Lambda function publishes a message to the SQS queue when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sqs-rust-sam",
- "templateURL": "serverless-patterns/lambda-sqs-rust-sam",
- "projectFolder": "lambda-sqs-rust-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon SQS",
- "link": "https://aws.amazon.com/sqs/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/lambda-sqs-terraform/example-pattern.json b/lambda-sqs-terraform/example-pattern.json
deleted file mode 100644
index 5f038aa49..000000000
--- a/lambda-sqs-terraform/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Lambda to SQS",
- "description": "Create a Lambda function that publishes to an SQS queue",
- "language": "",
- "level": "100",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The template deploys a Lambda function, an SQS queue and the IAM permissions required to run the application. The Lambda function publishes a message to the SQS queue when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-sqs-terraform",
- "templateURL": "serverless-patterns/lambda-sqs-terraform",
- "projectFolder": "lambda-sqs-terraform",
- "templateFile": "lambda-sqs-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Choosing between messaging services for serverless applications",
- "link": "https://aws.amazon.com/blogs/compute/choosing-between-messaging-services-for-serverless-applications/"
- },
- {
- "text": "Using AWS Lambda with Amazon SQS",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/lambda-ssm-parameter-java/example-pattern.json b/lambda-ssm-parameter-java/example-pattern.json
deleted file mode 100644
index b97fec4fa..000000000
--- a/lambda-ssm-parameter-java/example-pattern.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "title": "Lambda to SSM Parameter Store",
- "description": "Create an AWS Lambda function and an AWS Systems Manager Parameter Store parameter.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an AWS Lambda function and an AWS Systems Manager Parameter Store parameter. The parameter is added as a function environment variable named \"SSMParameterName\".",
- "The method can be either GET (retrieve current parameter value) or PUT (update parameter with new value). The body of the event is used to define the new value of the parameter."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-ssm-java",
- "templateURL": "serverless-patterns/lambda-ssm-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Sharing Secrets with AWS Lambda Using AWS Systems Manager Parameter Store",
- "link": "https://aws.amazon.com/blogs/compute/sharing-secrets-with-aws-lambda-using-aws-systems-manager-parameter-store/"
- },
- {
- "text": "The AWS::SSM::Parameter resource",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name STACK_NAME
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\"
"
- ]
- },
- "authors": [
- {
- "name": "Greg Davis",
- "image": "https://serverlessland.com/assets/images/resources/contributors/greg-davis.jpg",
- "bio": "I am a Senior Solutions Architect, AWS Cloud Architect, Full-Stack Developer, Database Engineer, Data Integration Architect, and Serverless Enthusiast.",
- "linkedin": "gregtx",
- "twitter": "@ServerlessGuy"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/lambda-ssm-parameter-terraform/example-pattern.json b/lambda-ssm-parameter-terraform/example-pattern.json
deleted file mode 100644
index fad8ceb3b..000000000
--- a/lambda-ssm-parameter-terraform/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Lambda to SSM Parameter Store",
- "description": "Creates an AWS Lambda function and an AWS Systems Manager Parameter Store parameter",
- "language": "Node.js",
- "level": "100",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an AWS Lambda function and an AWS Systems Manager Parameter Store parameter. The parameter is added as a function environment variable named \"SSMParameterName\".",
- "The method can be either GET (retrieve current parameter value) or PUT (update parameter with new value). The body of the event is used to define the new value of the parameter."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-ssm-parameter-terraform",
- "templateURL": "serverless-patterns/lambda-ssm-parameter-terraform",
- "projectFolder": "lambda-ssm-parameter-terraform",
- "templateFile": "lambda-ssm-parameter-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [{
- "text": "Sharing Secrets with AWS Lambda Using AWS Systems Manager Parameter Store",
- "link": "https://aws.amazon.com/blogs/compute/sharing-secrets-with-aws-lambda-using-aws-systems-manager-parameter-store/"
- },
- {
- "text": "Restricting access to Systems Manager parameters using IAM policies",
- "link": "https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-access.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the README in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [{
- "name": "Stephen Monaghan",
- "image": "",
- "bio": "Solutions Architect, AWS",
- "linkedin": "https://www.linkedin.com/in/stephen-monaghan-61873194/"
- }]
-}
diff --git a/lambda-ssm-sls/example-pattern.json b/lambda-ssm-sls/example-pattern.json
deleted file mode 100644
index 2ba2cd667..000000000
--- a/lambda-ssm-sls/example-pattern.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "title": "Lambda to samples",
- "description": "GET and PUT entries in SSM.",
- "language": "Python",
- "level": "200",
- "framework": "Serverless",
- "introBox": {
- "headline": "Create a Lambda function that GETs and PUTs entries in SSM.",
- "text": [
- "This Serverless Framework project deploys a Lambda function, an SSM Parameter Store entry and the IAM permissions required to run the application. The Lambda function publishes a message to the SQS queue when invoked."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-ssm-sls",
- "templateURL": "serverless-patterns/lambda-ssm-sls"
- }
- },
- "deploy": {
- "text": ["serverless deploy --verbose"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: serverless remove --verbose
.",
- "Confirm the stack has been deleted: aws cloudformation list-stacks --query \"StackSummaries[?contains(StackName,'STACK_NAME')].StackStatus\""
- ]
- },
- "authors": [
- {
- "name": "Alex Nelson",
- "bio": "Senior Solutions Architect, AWS"
- }
- ]
-}
diff --git a/lambda-streaming-large-sam/example-pattern.json b/lambda-streaming-large-sam/example-pattern.json
deleted file mode 100644
index 6d87feda3..000000000
--- a/lambda-streaming-large-sam/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Lambda Response streaming to return larger payloads",
- "description": "Lambda functions showing how to use Lambda response streaming to return larger payloads.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Lambda function showing how response streaming to return larger payloads."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-streaming-large-sam",
- "templateURL": "serverless-patterns/lambda-streaming-large-sam",
- "projectFolder": "lambda-streaming-large-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing AWS Lambda response streaming",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-response-streaming/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy -g --stack-name lambda-streaming-large-sam"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "contributor": "content/contributors/jrwood.json"
- }
-
\ No newline at end of file
diff --git a/lambda-streaming-sdk-sam/example-pattern.json b/lambda-streaming-sdk-sam/example-pattern.json
deleted file mode 100644
index 67cb606a4..000000000
--- a/lambda-streaming-sdk-sam/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Invoking a function with response streaming using the AWS SDK",
- "description": "Invoking a function with response streaming using the AWS SDK.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Lambda function with response streaming you can invoke using the AWS SDK."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-streaming-sdk-sam",
- "templateURL": "serverless-patterns/lambda-streaming-sdk-sam",
- "projectFolder": "lambda-streaming-sdk-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing AWS Lambda response streaming",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-response-streaming/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy -g --stack-name lambda-streaming-sdk-sam"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "contributor": "content/contributors/jrwood.json"
- }
-
\ No newline at end of file
diff --git a/lambda-streaming-ttfb-pipeline-sam/example-pattern.json b/lambda-streaming-ttfb-pipeline-sam/example-pattern.json
deleted file mode 100644
index 892613a08..000000000
--- a/lambda-streaming-ttfb-pipeline-sam/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Lambda Response streaming: time-to-first-byte using pipeline()",
- "description": "Lambda functions showing how to use Lambda response streaming to improve time-to-first byte using the pipeline() method.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Lambda function showing how response streaming can improve time-to-first-bite using the pipeline() method."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-streaming-ttfb-pipeline-sam",
- "templateURL": "serverless-patterns/lambda-streaming-ttfb-pipeline-sam",
- "projectFolder": "lambda-streaming-ttfb-pipeline-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing AWS Lambda response streaming",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-response-streaming/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy -g --stack-name lambda-streaming-ttfb-pipeline-sam"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "contributor": "content/contributors/jrwood.json"
- }
-
\ No newline at end of file
diff --git a/lambda-streaming-ttfb-write-sam/example-pattern.json b/lambda-streaming-ttfb-write-sam/example-pattern.json
deleted file mode 100644
index 29dcc8fc9..000000000
--- a/lambda-streaming-ttfb-write-sam/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Lambda Response streaming: time-to-first-byte using write()",
- "description": "Lambda functions showing how to use Lambda response streaming to improve time-to-first byte using the write() method.",
- "language": "Node.js",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Lambda function showing how response streaming can improve time-to-first-bite using the write() method."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-streaming-ttfb-write-sam",
- "templateURL": "serverless-patterns/lambda-streaming-ttfb-write-sam",
- "projectFolder": "lambda-streaming-ttfb-write-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing AWS Lambda response streaming",
- "link": "https://aws.amazon.com/blogs/compute/introducing-aws-lambda-response-streaming/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy -g --stack-name lambda-streaming-ttfb-write-sam"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "contributor": "content/contributors/jrwood.json"
- }
-
\ No newline at end of file
diff --git a/lambda-version-alias/example-pattern.json b/lambda-version-alias/example-pattern.json
deleted file mode 100644
index 2d4a5fbbc..000000000
--- a/lambda-version-alias/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "AWS Lambda with alias and version",
- "description": "Create a lambda function with an alias and a version",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates a lambda function with an alias 'dev' associated with the latest version of the function. ",
- "The inline code is written in the template",
- "For every update on the CloudFormaion stack: the function's code and the version description need to be updated to trigger the changeset and create a new version"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-version-alias",
- "templateURL": "serverless-patterns/lambda-version-alias",
- "projectFolder": "lambda-version-alias",
- "templateFile": "lambda-version-alias/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda function versions",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html"
- },
- {
- "text": "Lambda function aliases",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "Go to the function and run it.",
- "To create a new version, you need to UPDATE the stack with: a change in the function's code and a new version description",
- "Then upon update, the alias 'dev' will be associated with the latest version"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Alice Goumain",
- "image": "https://media.licdn.com/dms/image/C4E03AQFu1xnGt76xzg/profile-displayphoto-shrink_800_800/0/1662636936708?e=1686182400&v=beta&t=9RZra4EtrGWhcWVYZZtP_W9yrUR_XZ9ued70sTnkCgg",
- "bio": "Cloud Support Engineer in Serverless @ AWS",
- "linkedin": "https://www.linkedin.com/in/alice-goumain/"
- }
- ]
-}
diff --git a/lambda-vpc-endpoints-secrets-manager-cdk-dotnet/example-pattern.json b/lambda-vpc-endpoints-secrets-manager-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 454bbf729..000000000
--- a/lambda-vpc-endpoints-secrets-manager-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "AWS Lambda to AWS Secrets Manager",
- "description": "Create an AWS Lambda function inside private subnet and access AWS Secrets Manager privately.",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application demonstrates how to establish an AWS Lambda function inside a private subnet of a VPC and access AWS Secrets Manager privately using VPC endpoints."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-vpc-endpoints-secrets-manager-cdk-dotnet",
- "projectFolder": "lambda-vpc-endpoints-secrets-manager-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-vpc-endpoints-secrets-manager-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/lambda-vpc-endpoints-secrets-manager-cdk-dotnet",
- "templateFile": "cdk/src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Pankaj Rawat",
- "image": "https://rawatpankaj.com/images/pic.jpeg",
- "bio": "Pankaj Rawat is a Lead Consultant at Amazon Web Services.",
- "linkedin": "pankaj-rawat-14568765",
- "twitter": "pankajrawat333"
- }
- ]
- }
\ No newline at end of file
diff --git a/lambda-vpc-interface-endpoints-secrets-manager/example-pattern.json b/lambda-vpc-interface-endpoints-secrets-manager/example-pattern.json
deleted file mode 100644
index 13ecea788..000000000
--- a/lambda-vpc-interface-endpoints-secrets-manager/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "AWS Lambda to AWS Secrets Manager in Private Subnet",
- "description": "Deployment of an AWS Lambda function in private and isolated subnets, along with allowing communication with selected AWS service API endpoints using AWS PrivateLink VPC interface endpoints.",
- "language": "TypeScript",
- "level": "400",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern allows to operate a Lambda function that doesn't have outbound public internet access but have access to Secrets Manager service endpoint.",
- "This pattern deploys one private VPC, one private and isolated subnet, one security group, one Python Lambda function, one VPC Interface Endpoint for Amazon Secrets Manager and one example secret."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/lambda-vpc-interface-endpoints-secrets-manager",
- "templateURL": "serverless-patterns/lambda-vpc-interface-endpoints-secrets-manager",
- "projectFolder": "lambda-vpc-interface-endpoints-secrets-manager",
- "templateFile": "lib/aws-lambda-to-secrets-manager-in-private-subnet-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "VPC with public and private subnets (NAT)",
- "link": "https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html"
- },
- {
- "text": "AWS services that integrate with AWS PrivateLink",
- "link": "https://docs.aws.amazon.com/vpc/latest/privatelink/aws-services-privatelink-support.html"
- },
- {
- "text": "Use AWS PrivateLink to Access AWS Lambda Over Private AWS Network",
- "link": "https://aws.amazon.com/blogs/aws/new-use-aws-privatelink-to-access-aws-lambda-over-private-aws-network/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See README.md file in the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Emir Ayar",
- "image": "https://eercan.com/emir-ercan-ayar-2022-profile-mid.png",
- "bio": "Emir Ayar is a Tech Lead Solutions Architect on the AWS Prototyping Team to help customers build IoT, Edge AI, and Industry 4.0 solutions and implement architectural best practices.",
- "linkedin": "https://www.linkedin.com/in/eercanayar/",
- "twitter": "https://twitter.com/eercanayar"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/lambda-vpc-secrets-sls/example-pattern.json b/lambda-vpc-secrets-sls/example-pattern.json
deleted file mode 100644
index 8868f8fef..000000000
--- a/lambda-vpc-secrets-sls/example-pattern.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "title": "Lambda function in a VPC",
- "description": "Create a Lambda Function in a VPC with secure access to Secrets Manager.",
- "language": "TypeScript",
- "level": "200",
- "framework": "Serverless Framework",
- "services": {
- "from": "lambda",
- "to": "secrets manager"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a Lambda function in a VPC and only granting access to Secrets Manager via a VPC endpoint."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-vpc-secrets-sls",
- "templateURL": "serverless-patterns/lambda-vpc-secrets-sls",
- "projectFolder": "lambda-vpc-secrets-sls",
- "templateFile": "lambda-vpc-secrets-sls/serverless.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Configuring a Lambda function to access resources in a VPC",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html"
- },
- {
- "text": "Access an AWS service using an interface VPC endpoint",
- "link": "https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html"
- },
- {
- "text": "AWS VPC Configuration with Serverless Framework",
- "link": "https://www.serverless.com/framework/docs/providers/aws/guide/functions#vpc-configuration"
- },
- {
- "text": "Three ways to use AWS services from a Lambda in a VPC",
- "link": "https://www.alexdebrie.com/posts/aws-lambda-vpc/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sls deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sls remove
."
- ]
- },
- "authors": [
- {
- "name": "Wayne Greeley",
- "image": "",
- "bio": "AWS Community Builder",
- "linkedin": "",
- "twitter": ""
- }
- ]
-}
diff --git a/lambda-web-adapter-cdk/example-pattern.json b/lambda-web-adapter-cdk/example-pattern.json
deleted file mode 100644
index 4156f9719..000000000
--- a/lambda-web-adapter-cdk/example-pattern.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "title": "Lambda Web Adapter with Function URL",
- "description": "Create a Lambda function that contains a NodeJS application and it is invoked by a Function URL",
- "language": "Typescript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This examples creates a Lambda function that is triggered by a Function URL.",
- "The function contains a NodeJS application - lift and shift - that is wrapped using the Lambda Web Adapter",
- "Lambda Web Adapter is an open source project that allows you to wrap any HTTP web application with a Lambda function"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/lambda-web-adapter-cdk",
- "templateURL": "serverless-patterns/lambda-web-adapter-cdk",
- "projectFolder": "lambda-web-adapter-cdk",
- "templateFile": "lambda-web-adapter-cdk/cdk/stack/lambda-web-adapter-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Lambda Web Adapter GitHub project",
- "link": "https://github.com/awslabs/aws-lambda-web-adapter"
- },
- {
- "text": "Is lift and shift migration Lambda possible? Demo with Node-Express app",
- "link": "https://youtu.be/MvVaFPCdiZY"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk destroy
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba"
- }
- ]
-}
diff --git a/msk-cfn-sasl-lambda/example-pattern.json b/msk-cfn-sasl-lambda/example-pattern.json
deleted file mode 100644
index 8163f979d..000000000
--- a/msk-cfn-sasl-lambda/example-pattern.json
+++ /dev/null
@@ -1,87 +0,0 @@
-{
- "title": "Cloudformation template to deploy serverless or provisioned MSK Cluster and SAM project with Lambda function to demonstrate SASL authentication",
- "description": "Create a Lambda function that uses an Amazon MSK Topic as an event source.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern provides two resources - ",
- " - A CloudFormation template that can be used to deploy serverless or provisioned MSK cluster and Cloud9 instance in the same VPC to interact with the MSK cluster",
- " - A SAM project with a Lambda Function to demonstrate SASL authentication.",
- "To test this pattern, first deploy the CloudFormation stack using the template file MSKSampleStack.yml under msk-cfn-sasl-lambda/create-cluster-cfn. You will need to chose if you'd like to provision serverless or provisioned cluster. For both options, all available authentication mechanisms are enabled - TLS, SASL/SCRAM, and IAM for provisioned cluster, and IAM for serverless. Follow msk-cfn-sasl-lambda/create-cluster-cfn/README.md for detailed instructions",
- "Next step is to deploy the Lambda Function. Follow steps under msk-cfn-sasl-lambda/README.md to deploy and test the Lambda Function.",
- "Note - Presently MSK with serverless is not supported for SASL authentication, you must use Provisioned option when deplying the MSK cluster."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/msk-cfn-sasl-lambda",
- "templateURL": "serverless-patterns/msk-cfn-sasl-lambda",
- "projectFolder": "msk-cfn-sasl-lambda",
- "templateFile": "msk-cfn-sasl-lambda/create-cluster-cfn/MSKSampleStack.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using Lambda with Amazon MSK",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html"
- },
- {
- "text": "CloudFormation Provisioned MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html"
- },
- {
- "text": "CloudFormation serverless MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the Lambda Function: sam delete
.",
- "Delete CloudFormation stack to delete the MSK stack and associated resources."
- ]
- },
- "authors": [
- {
- "name": "Vaibhav Jain",
- "bio": "AWS - Sr. Application Architect",
- "image": "https://media.licdn.com/dms/image/C4E03AQEqzZWHGT4dBQ/profile-displayphoto-shrink_800_800/0/1580165399872?e=1687392000&v=beta&t=zdxENLnqCpqCz9i1Uf5Yx4YXlR9EYvgxP8N5UTsy6J8",
- "linkedin": "https://www.linkedin.com/in/vaibhavjainv/"
- },
- {
- "name": "Paveen Allam",
- "bio": "Senior Solutions Architect",
- "image": "https://www.fintail.me/images/pa.jpg",
- "linkedin": "https://www.linkedin.com/in/pallam/"
- },
- {
- "name": "Suraj Tripathi",
- "bio": "AWS - AppDev Cloud Consultant",
- "linkedin": "https://www.linkedin.com/in/suraj-tripathi-01b49a140/"
- },
- {
- "name": "Adam Wagner",
- "bio": "AWS - Principal Serverless Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/adam-wagner-4bb412/"
- },
- {
- "name": "Indranil Banerjee",
- "bio": "AWS - Senior Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/indranil-banerjee-b00a261/"
- }
- ]
-}
diff --git a/msk-lambda-iam-node-sam/example-pattern.json b/msk-lambda-iam-node-sam/example-pattern.json
deleted file mode 100644
index f64050116..000000000
--- a/msk-lambda-iam-node-sam/example-pattern.json
+++ /dev/null
@@ -1,90 +0,0 @@
-{
- "title": "AWS Lambda function subscribed to an Amazon MSK topic using IAM auth",
- "description": "Creates a Lambda function that uses an Amazon MSK topic as an event source with IAM authentication.",
- "language": "Node.js",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern provides a Lambda function along with an Event Source Mapping to a Kafka topic.",
- "It requires that you already have an Amazon Managed Streaming for Kafka(Amazon MSK) cluster setup with a topic created. If you don't already have an MSK cluster ",
- "you can use the example in this pattern https://serverlessland.com/patterns/msk-cfn-sasl-lambda (linked in the resources) to deploy a cluster.",
- "This pattern works with either a Provisioned or Serverless MSK cluster as long as the cluster is configured to use IAM authentication. ",
- "For detailed deployment instructions instructions see the README "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/msk-lambda-node-sam",
- "templateURL": "serverless-patterns/msk-lambda-node-sam",
- "projectFolder": "msk-lambda-node-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon MSK Cluster pattern",
- "link": "https://serverlessland.com/patterns/msk-cfn-sasl-lambda"
- },
- {
- "text": "Using AWS Lambda with Amazon MSK",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html"
- },
- {
- "text": "AWS CloudFormation Provisioned MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html"
- },
- {
- "text": "AWS CloudFormation Serverless MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the template: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Vaibhav Jain",
- "bio": "AWS - Sr. Application Architect",
- "image": "https://media.licdn.com/dms/image/C4E03AQEqzZWHGT4dBQ/profile-displayphoto-shrink_800_800/0/1580165399872?e=1687392000&v=beta&t=zdxENLnqCpqCz9i1Uf5Yx4YXlR9EYvgxP8N5UTsy6J8",
- "linkedin": "https://www.linkedin.com/in/vaibhavjainv/"
- },
- {
- "name": "Paveen Allam",
- "bio": "Senior Solutions Architect",
- "image": "https://www.fintail.me/images/pa.jpg",
- "linkedin": "https://www.linkedin.com/in/pallam/"
- },
- {
- "name": "Suraj Tripathi",
- "bio": "AWS - AppDev Cloud Consultant",
- "linkedin": "https://www.linkedin.com/in/suraj-tripathi-01b49a140/"
- },
- {
- "name": "Adam Wagner",
- "bio": "AWS - Principal Serverless Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/adam-wagner-4bb412/"
- },
- {
- "name": "Indranil Banerjee",
- "bio": "AWS - Senior Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/indranil-banerjee-b00a261/"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/msk-lambda-iam-python-sam/example-pattern.json b/msk-lambda-iam-python-sam/example-pattern.json
deleted file mode 100644
index 4bff6743a..000000000
--- a/msk-lambda-iam-python-sam/example-pattern.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "title": "AWS Lambda function subscribed to an Amazon MSK topic using IAM auth",
- "description": "Creates a Lambda function that uses an Amazon MSK topic as an event source with IAM authentication.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern provides a Lambda function along with an Event Source Mapping to a Kafka topic.",
- "It requires that you already have an Amazon Managed Streaming for Kafka(Amazon MSK) cluster setup with a topic created. If you don't already have an MSK cluster ",
- "you can use the example in this pattern https://serverlessland.com/patterns/msk-cfn-sasl-lambda (linked in the resources) to deploy a cluster.",
- "This pattern works with either a Provisioned or Serverless MSK cluster as long as the cluster is configured to use IAM authentication. ",
- "For detailed deployment instructions instructions see the README "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/msk-lambda-python-sam",
- "templateURL": "serverless-patterns/msk-lambda-python-sam",
- "projectFolder": "msk-lambda-python-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon MSK Cluster pattern",
- "link": "https://serverlessland.com/patterns/msk-cfn-sasl-lambda"
- },
- {
- "text": "Using AWS Lambda with Amazon MSK",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html"
- },
- {
- "text": "AWS CloudFormation Provisioned MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html"
- },
- {
- "text": "AWS CloudFormation Serverless MSK cluster reference",
- "link": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the template: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Vaibhav Jain",
- "bio": "AWS - Sr. Application Architect",
- "image": "https://media.licdn.com/dms/image/C4E03AQEqzZWHGT4dBQ/profile-displayphoto-shrink_800_800/0/1580165399872?e=1687392000&v=beta&t=zdxENLnqCpqCz9i1Uf5Yx4YXlR9EYvgxP8N5UTsy6J8",
- "linkedin": "https://www.linkedin.com/in/vaibhavjainv/"
- },
- {
- "name": "Paveen Allam",
- "bio": "Senior Solutions Architect",
- "image": "https://www.fintail.me/images/pa.jpg",
- "linkedin": "https://www.linkedin.com/in/pallam/"
- },
- {
- "name": "Suraj Tripathi",
- "bio": "AWS - AppDev Cloud Consultant",
- "linkedin": "https://www.linkedin.com/in/suraj-tripathi-01b49a140/"
- },
- {
- "name": "Adam Wagner",
- "bio": "AWS - Principal Serverless Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/adam-wagner-4bb412/"
- },
- {
- "name": "Indranil Banerjee",
- "bio": "AWS - Senior Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/indranil-banerjee-b00a261/"
- }
- ]
-}
diff --git a/msk-lambda/example-pattern.json b/msk-lambda/example-pattern.json
deleted file mode 100644
index eaed8768f..000000000
--- a/msk-lambda/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon Managed Streaming for Apache Kafka (Amazon MSK) to AWS Lambda",
- "description": "Create a Lambda function that uses an Amazon MSK Topic as an event source.",
- "language": "Node.js",
- "architectureURL": "https://serverlessland.s3.amazonaws.com/assets/patterns/patterns-lambda-to-eventbridge.png",
- "videoId": "",
- "level":"100",
- "framework": "SAM",
- "services": {
- "from": "MSK",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "Lambda is a consumer application for your Kafka topic. It processes records from one or more partitions and sends the payload to the target function. Lambda continues to process batches until there are no more messages in the topic."
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/msk-lambda",
- "templateURL": "https://raw.githubusercontent.com/aws-samples/serverless-patterns/main/msk-lambda/template.yaml",
- "readmeURL": ""
- },
- "payloads": [
- {
- "headline": "",
- "payloadURL": ""
- }
- ]
- },
- "resources": {
- "headline": "Additional resources",
- "bullets": [
- {
- "text": "Using Lambda with Amazon MSK",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html"
- },
- {
- "text": "Using Amazon MSK as an event source for AWS Lambda",
- "link": "https://aws.amazon.com/blogs/compute/using-amazon-msk-as-an-event-source-for-aws-lambda/"
- }
- ]
- },
- "author": {
- "headline": "Presented by Parnab Basak, AWS Solutions Architect",
- "name": "Parnab Basak",
- "imageURL": "https://avatars.githubusercontent.com/u/18371977?v=4",
- "twitter": "@ParnabBasak",
- "bio": "Parnab is a Solutions Architect for the Service Creation team in AWS. He specializes in creating net new solutions that are cloud native using modern s/w dev practices like Serverless, DevOps & Analytics"
- }
-}
diff --git a/normalizer-pattern-cdk/example-pattern.json b/normalizer-pattern-cdk/example-pattern.json
deleted file mode 100644
index bfb7dfdd3..000000000
--- a/normalizer-pattern-cdk/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "SQS to EventBridge using EventBridge Pipes with normalizer pattern",
- "description": "This pattern implementes the normalizer pattern using an EventBridge Pipe. This example uses SQS as source and EventBridge as target, but the pattern can be applied to other sources and targets as well.",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The normalizer pattern routes each event type through its specific message translator, so that our downstream systems process messages with a unified structure. It is similar to a message translator, but with various source components, which all have different formats for events."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/normalizer-pattern-cdk",
- "templateURL": "serverless-patterns/normalizer-pattern-cdk",
- "projectFolder": "normalizer-pattern-cdk",
- "templateFile": "src/lib/normalizer-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "More Enterprise Integration Patterns on AWS Samples",
- "link": "https://github.com/aws-samples/amazon-eventbridge-pipes-architectural-patterns"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Dominik Richter",
- "image": "https://avatars.githubusercontent.com/u/29404931",
- "bio": "Solutions Architect at AWS, passionate about event-driven architectures and Serverless.",
- "linkedin": "do-richter"
- }
- ]
-}
diff --git a/public-alb-private-api-terraform/example-pattern.json b/public-alb-private-api-terraform/example-pattern.json
deleted file mode 100644
index 0f63fb266..000000000
--- a/public-alb-private-api-terraform/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Cross Account Private API Access via Public Application Load Balancer",
- "description": "Create ",
- "language": "HCL",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern allows users from one account to access their Private REST APIs present in another account over the internet.",
- "This facilitates abstraction of network resources (like load balancers, virtual private clouds, endpoints) & application resources (like lambda, api gateway) into separate individual management accounts."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/",
- "templateURL": "serverless-patterns/public-alb-private-api-terraform",
- "projectFolder": "public-alb-private-api-terraform",
- "templateFile": "public-alb-private-api-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: How to invoke a Private API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-api-test-invoke-url.html"
- },
- {
- "text": "Tutorial: How to access Private API in another account",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-private-cross-account-vpce/"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [
- {
- "name": "Abhishek Agawane",
- "image": "https://drive.google.com/file/d/1E-5koDaKEaMUtOctX32I9TLwfh3kgpAq/view?usp=drivesdk",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS",
- "linkedin": "https://www.linkedin.com/in/agawabhi/"
- }
- ]
- }
\ No newline at end of file
diff --git a/public-nlb-or-alb-private-api-cfn/example-pattern.json b/public-nlb-or-alb-private-api-cfn/example-pattern.json
deleted file mode 100644
index 5f0104852..000000000
--- a/public-nlb-or-alb-private-api-cfn/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Same/Cross Account Private API Access via Public Load Balancer",
- "description": "Create ",
- "language": "HCL",
- "level": "200",
- "framework": "Serverless",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern allows users from one account to access their Private REST APIs present in same/cross account over the internet.",
- "This facilitates abstraction of network resources (like load balancers, virtual private clouds, endpoints) & application resources (like lambda, api gateway) into separate individual management accounts."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/",
- "templateURL": "serverless-patterns/public-nlb-or-alb-private-api-cfn",
- "projectFolder": "public-nlb-or-alb-private-api-cfn",
- "templateFile": "public-nlb-or-alb-private-api-cfn/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: How to invoke a Private API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-private-api-test-invoke-url.html"
- },
- {
- "text": "Tutorial: How to access Private API in another account",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/api-gateway-private-cross-account-vpce/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "sam delete --stack-name "
- ]
- },
- "authors": [
- {
- "name": "Shivam Rajawat",
- "image": "https://drive.google.com/file/d/1q872K5V1RKFHCrkwGSssWNeIwug6ZLxO/view",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS",
- "linkedin": "shivam-rajawat-a42b68124"
- }
- ]
- }
\ No newline at end of file
diff --git a/rds-sns-event-notification-terraform/example-pattern.json b/rds-sns-event-notification-terraform/example-pattern.json
deleted file mode 100644
index cc83ac9d8..000000000
--- a/rds-sns-event-notification-terraform/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Amazon RDS instance event notification to Amazon SNS",
- "description": "Amazon RDS event subscriptions allow users to configure notifications for RDS events (provided through an SNS topic).",
- "language": "YAML",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template configures an event subscription for failure, low storage, and availability event categories for RDS Instances."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/rds-sns-event-notification-terraform",
- "templateURL": "serverless-patterns/rds-sns-event-notification-terraform",
- "projectFolder": "rds-sns-event-notification-terraform",
- "templateFile": "main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with Amazon RDS event notification",
- "link": "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html"
- },
- {
- "text": "Creating an Amazon RDS DB instance",
- "link": "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html#USER_CreateDBInstance.Creating"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
.",
- "Confirm the stack has been deleted: terraform show
."
- ]
- },
- "authors": [
- {
- "name": "Makendran G",
- "image": "https://drive.google.com/file/d/1mUObnbmn52UWL-Zn39EpgpneiBNv3LCN/view?usp=sharing",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/makendran",
- "twitter": "@MakendranG"
- }
- ]
-}
diff --git a/rds-sns-event-notification/example-pattern.json b/rds-sns-event-notification/example-pattern.json
deleted file mode 100644
index 1bb37384d..000000000
--- a/rds-sns-event-notification/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "RDS Instance Event Subscription for Failure, Low Storage and Availability Events",
- "description": "RDS Event Subscriptions allow users to configure notifications for RDS Events (provided through an SNS topic). This template configures an event subscription for failure, low storage, and availability event categories for RDS Instances.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "RDS Event Subscriptions allow users to configure notifications for RDS Events (provided through an SNS topic). This template configures an event subscription for failure, low storage, and availability event categories for RDS Instances."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/rds-sns-event-notification",
- "templateURL": "serverless-patterns/rds-sns-event-notification",
- "projectFolder": "rds-sns-event-notification",
- "templateFile": "rds-sns-event-notification/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Working with Amazon RDS event notification",
- "link": "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html"
- },
- {
- "text": "Creating an Amazon RDS DB instance",
- "link": "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html#USER_CreateDBInstance.Creating"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Jainam Shah",
- "image": "https://drive.google.com/file/d/19NrbeT5LdQRAqnOGdEXsPZKvWph3Ba8U/view?usp=sharing",
- "bio": "Technical Account Manager @ AWS",
- "linkedin": "https://www.linkedin.com/in/jainamshah92",
- "twitter": "@imJshah92"
- }
- ]
-}
diff --git a/route53-alb-fargate-cdk-dotnet/example-pattern.json b/route53-alb-fargate-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 5bb5a441f..000000000
--- a/route53-alb-fargate-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "title": "Route53 to ALB to ECS Fargate",
- "description": "This pattern shows how to deploy a containerized Web API as an ECS fargate service, and expose it with a custom domain using Route53",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The CDK stack creates an ECS fargate service that hosts a containerized Web API.",
- "The ECS service is fronted by Application Load Balancer present in public subnet, while ECS tasks runs in private subnet.",
- "Requests are first recieved by the Route53, and then forwarded to Application Load Balancer (ALB).",
- "ALB does the SSL offloading and forward the requests to ECS tasks."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/route53-alb-fargate-cdk-dotnet",
- "projectFolder": "route53-alb-fargate-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/route53-alb-fargate-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/route53-alb-fargate-cdk-dotnet",
- "templateFile": "src/Route53AlbFargateCdkDotnet/Route53AlbFargateCdkDotnetStack.cs"
- }
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for detailed cleanup instructions."
- ]
- },
- "authors": [
- {
- "name": "Ankush Jain",
- "image": "https://avatars.githubusercontent.com/u/13661966?v=4",
- "bio": "Application Development Consultant at AWS Professional Services.",
- "linkedin": "ankush-jain-developer",
- "twitter": "ankushjain358"
- }
- ]
-}
\ No newline at end of file
diff --git a/s3-eventbridge-direct-java/example-pattern.json b/s3-eventbridge-direct-java/example-pattern.json
deleted file mode 100644
index 5097a11bc..000000000
--- a/s3-eventbridge-direct-java/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "S3 to EventBridge",
- "description": "Creates an S3 bucket that publishes events to EventBridge.",
- "language": "Java",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys an S3 bucket that publishes events to Amazon EventBridge, and sets up a Lambda function to show how to consume these events via an EventBridge rule. It deploys the the IAM resources required to run the application.",
- "EventBridge consumes events directly from S3 buckets when the NoticationConfiguration is enabled, as shown in the template."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-direct-java",
- "templateURL": "serverless-patterns/s3-eventbridge-direct-java"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- },
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "James Beswick",
- "image": "https://serverlessland.com/assets/images/resources/jbes.jpg",
- "bio": "I am a self-confessed serverless geek and enjoy helping developers build faster with serverless! I have been software developer and product manager before becoming a Developer Advocate. Ask me anything!",
- "linkedin": "jamesbeswick",
- "twitter": "@jbesw"
- },
- {
- "name": "Steven Cook",
- "bio": "Senior Solutions Architect at AWS."
- }
- ]
-}
diff --git a/s3-eventbridge-ecs/example-pattern.json b/s3-eventbridge-ecs/example-pattern.json
deleted file mode 100644
index b30dc94ef..000000000
--- a/s3-eventbridge-ecs/example-pattern.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "title": "S3 to EventBridge to ECS",
- "description": "Create an integration between S3, EventBridge and ECS.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This serverless pattern uses EventBridge to trigger multiple ECS tasks on Fargate. The ECS task queries the S3 bucket for files and reads them.",
- "These ECS tasks can be extended to insert the data to a database, thus speeding up the process of loading data from S3 to a database.This application pattern can be extended to Process a file from a single bucket in parallel or Perform long running tasks not suited for Lambda processing in parallel"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-ecs",
- "templateURL": "serverless-patterns/s3-eventbridge-ecs",
- "projectFolder": "s3-eventbridge-ecs",
- "templateFile": "s3-eventbridge-ecs/pattern_s3_eb_ecs.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon S3",
- "link": "https://docs.aws.amazon.com/s3/index.html"
- },
- {
- "text": "Amazon EventBridge - Serverless Event Router",
- "link": "https://docs.aws.amazon.com/eventbridge/index.html"
- },
- {
- "text": "Amazon Elastic Container Service",
- "link": "https://docs.aws.amazon.com/ecs/index.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "See the GitHub repo for detailed deployment and testing instructions."
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: terraform destroy
."
- ]
- },
- "authors": [
- {
- "name": "Jeff Hunter",
- "image": "https://avatars.githubusercontent.com/u/128183699",
- "bio": "AWS Sr. Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/hunterjeff/"
- },
- {
- "name": "Rajdeep Banerjee",
- "image": "https://avatars.githubusercontent.com/u/106704318",
- "bio": "AWS Sr. Solutions Architect",
- "linkedin": "https://www.linkedin.com/in/rajdeep-banerjee/"
- }
- ]
-}
diff --git a/s3-eventbridge-lambda-cdk/example-pattern.json b/s3-eventbridge-lambda-cdk/example-pattern.json
deleted file mode 100644
index c209542e1..000000000
--- a/s3-eventbridge-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "AWS S3 to AWS EventBridge to AWS Lambda",
- "description": "Create a S3 bucket with EventBridge notifications enabled and send S3 events to AWS Lambda.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS Cloud Development Kit (AWS CDK) template for creating an AWS S3 bucket with AWS EventBridge notifications turned on",
- "All S3 events in this bucket is sent to AWS EventBridge",
- "This CDK template also deploys a AWS Lambda function which will process the event sent to AWS EventBridge and create a tag for the S3 object that was created",
- "An AWS EventBridge rule is also created to send only the Object Created event of the bucket to the Lambda function"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-lambda-cdk",
- "templateURL": "serverless-patterns/s3-eventbridge-lambda-cdk",
- "projectFolder": "s3-eventbridge-lambda-cdk",
- "templateFile": "s3-eventbridge-lambda-cdk/cdk/stack/s3-eventbridge-lambda-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS S3 Event Notifications with EventBridge",
- "link": "https://aws.amazon.com/blogs/aws/new-use-amazon-s3-event-notifications-with-amazon-eventbridge/"
- },
- {
- "text": "Using EventBridge with S3",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/EventBridge.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Arun Thangaraj",
- "image": "link-to-your-photo.jpg",
- "bio": "Arun is a Cloud Application Architect at AWS Professional Services based out of Dallas, TX.",
- "linkedin": "www.linkedin.com/in/arunvthangaraj"
- }
- ]
- }
\ No newline at end of file
diff --git a/s3-eventbridge-rust-sam/example-pattern.json b/s3-eventbridge-rust-sam/example-pattern.json
deleted file mode 100644
index 3000a9d3d..000000000
--- a/s3-eventbridge-rust-sam/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Amazon S3 to Amazon EventBridge",
- "description": "The SAM template deploys an S3 bucket that publishes events to Amazon EventBridge, and sets up a Lambda function to show how to consume these events via an EventBridge rule. It deploys the the IAM resources required to run the application.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Upload an object to the deployed S3 bucket.",
- "The Lambda function is invoked with the event from S3, routed via EventBridge."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-rust-sam",
- "templateURL": "serverless-patterns/s3-eventbridge-rust-sam",
- "projectFolder": "s3-eventbridge-rust-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon EventBridge",
- "link": "https://aws.amazon.com/eventbridge/"
- },
- {
- "text": "Amazon S3",
- "link": "https://aws.amazon.com/s3/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/s3-eventbridge-sfn-cdk/example-pattern.json b/s3-eventbridge-sfn-cdk/example-pattern.json
deleted file mode 100644
index eb33db22e..000000000
--- a/s3-eventbridge-sfn-cdk/example-pattern.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "title": "S3 to Step Functions",
- "description": "This pattern demonstrates how to create an EventBridge rule with S3 as the event source and Step Functions as target.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how you can trigger an execution in Step Functions state machine when an object is created in an S3 bucket . ",
- "When you uploads an object to the newly created S3 bucket, this will send an `Object Created` event to EventBridge, based on the EventBridge rule, the state machine is executed",
- "This pattern deploys one Step Functions state machine, one S3 bucket, one EventBridge rule."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-sfn-cdk",
- "templateURL": "serverless-patterns/s3-eventbridge-sfn-cdk",
- "projectFolder": "s3-eventbridge-sfn-cdk",
- "templateFile": "s3-eventbridge-sfn-cdk/src/lib/s3-eventbridge-sfn.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS S3 Event Notifications with EventBridge",
- "link": "https://aws.amazon.com/blogs/aws/new-use-amazon-s3-event-notifications-with-amazon-eventbridge/"
- },
- {
- "text": "Using EventBridge with S3",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/EventBridge.html"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk delete
."]
- },
- "authors": [
- {
- "name": "Trinh Vo",
- "image": "https://media.licdn.com/dms/image/C5603AQF4Ke0jgSBcZA/profile-displayphoto-shrink_800_800/0/1658462515681?e=2147483647&v=beta&t=zgT3WKQkas7N1w98d-ToTCMqhRUDbWTjMaPowWH1JeE",
- "bio": "Trinh is an Associate Solutions Architect at AWS Vietnam.",
- "linkedin": "trinh-vo-095848185"
- }
- ]
-}
diff --git a/s3-eventbridge-sfn/example-pattern.json b/s3-eventbridge-sfn/example-pattern.json
deleted file mode 100644
index 34db1dcc2..000000000
--- a/s3-eventbridge-sfn/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "S3 to EventBridge to Step Functions",
- "description": "Uses EventBridge to trigger a Step Functions workflow each time an object is uploaded to S3.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The SAM template deploys an Amazon S3 bucket that publishes events to Amazon EventBridge, and sets up an AWS Step Functions workflow to show how to consume these events via an EventBridge rule. It deploys the the IAM resources required to run the application.",
- "EventBridge consumes events directly from S3 buckets when the NoticationConfiguration is enabled, as shown in the template.",
- "The template contains a sample Step Functions workflow that detects cats in images uploaded to the Amazon S3 bucket using Amazon Rekognition's DetectLabels API. Replace this workflow with your own state machine."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-sfn",
- "templateURL": "serverless-patterns/s3-eventbridge-sfn",
- "projectFolder": "s3-eventbridge-sfn",
- "templateFile": "s3-eventbridge-sfn/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Detecting labels in an image - Amazon Rekognition Developer Guide",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/labels-detect-labels-image.html"
- },
- {
- "text": "AWS SDK service integrations - AWS Step Functions Developer Guide",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/supported-services-awssdk.html"
- },
- {
- "text": "AWS Step Functions Workshop",
- "link": "https://catalog.workshops.aws/stepfunctions/en-US/"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Pascal Vogel",
- "image": "https://avatars.githubusercontent.com/u/100202393?v=4",
- "bio": "Pascal Vogel is an Associate Solutions Architect at Amazon Web Services (AWS).",
- "linkedin": "pascal-vogel",
- "twitter": "pvogel_"
- }
- ]
-}
diff --git a/s3-eventbridge-sns-sam/example-pattern.json b/s3-eventbridge-sns-sam/example-pattern.json
deleted file mode 100644
index 28949eb33..000000000
--- a/s3-eventbridge-sns-sam/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon S3 to Amazon EventBridge to Amazon SNS",
- "description": "Publish events directly from S3 to EventBridge and send notifications to SNS when an object is created. This template creates an S3 bucket that publishes events to Amazon EventBridge. When an object is uploaded to the bucket, the EventBridge is triggered and a SNS notification is sent.",
- "language": "",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template creates an S3 bucket that publishes events to Amazon EventBridge, allows you to upload objects to that bucket, and will send you notifications from EventBridge to SNS when an object is created in that bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-eventbridge-sam",
- "templateURL": "serverless-patterns/s3-eventbridge-sam",
- "projectFolder": "s3-eventbridge-sam",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Use Amazon EventBridge to Build Decoupled, Event-Driven Architectures",
- "link": "https://serverlessland.com/learn/eventbridge"
- },
- {
- "text": "Use Amazon S3 Event Notifications with Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/aws/new-use-amazon-s3-event-notifications-with-amazon-eventbridge/"
- },
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy --guided"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
"]
- },
- "authors": [
- {
- "name": "Makendran G",
- "image": "https://drive.google.com/file/d/1mUObnbmn52UWL-Zn39EpgpneiBNv3LCN/view?usp=sharing",
- "bio": "Cloud Support Engineer @ AWS",
- "linkedin": "https://www.linkedin.com/in/makendran",
- "twitter": "@MakendranG"
- }
- ]
-}
\ No newline at end of file
diff --git a/s3-lambda-dotnet/example-pattern.json b/s3-lambda-dotnet/example-pattern.json
deleted file mode 100644
index d49c79423..000000000
--- a/s3-lambda-dotnet/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon S3 to AWS Lambda with .NET",
- "description": "Automate the creation of thumbnail images from new images on Amazon S3 leveraging Lambda and .NET",
- "language": ".NET",
- "level": "200",
- "framework": "SAM",
- "services": {
- "from": "s3",
- "to": "lambda"
- },
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon S3 bucket for image hosting with an AWS Lambda function that gets invoked when new images are added to the bucket. The Lambda function uses .NET 6 to create a thumbnail of the image and save the thumbnail back to the same S3 bucket."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-dotnet",
- "templateURL": "serverless-patterns/s3-lambda-dotnet",
- "projectFolder": "s3-lambda-dotnet",
- "templateFile": "s3-lambda-dotnet/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using an Amazon S3 trigger to invoke a Lambda function",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html"
- },
- {
- "text": "Building Lambda functions with C#",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/lambda-csharp.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam build",
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo readme for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Empty the S3 bucket",
- "sam delete --stack-name STACK_NAME"
- ]
- },
- "authors": [
- {
- "name": "Garrett Johnson",
- "image": "https://grream-rando-7-19-26-bucket.s3.amazonaws.com/images/IMG_1549.jpg",
- "bio": "Garrett is a Sr. Solutions Architect at AWS based in Utah.",
- "linkedin": "/garrett-johnson-30998247"
- }
- ]
-}
diff --git a/s3-lambda-mediaconvert/example-pattern.json b/s3-lambda-mediaconvert/example-pattern.json
deleted file mode 100644
index bf0552c82..000000000
--- a/s3-lambda-mediaconvert/example-pattern.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "title": "S3 to MediaCovert via AWS Lambda",
- "description": "Automate the trans-codification of new video files on Amazon S3, leveraging AWS Lambda and AWS Elemental MediaConvert. The transcoded video will go to another S3 bucket for future streaming or further processing.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use Lambda for triggering trans-codification jobs on AWS Elemental MediaCovert. This pattern leverages the integration between Amazon S3 and AWS Lambda for triggering Lambda functions",
- "Each time you upload a video file to the input S3 bucket, a Lambda function is triggered. The function gets invocation event, process it, and creates a job in AWS Elemental MediaConverter. The settings of the job are in the job.json file which is part of the lambda deployment package.",
- "The output of the job is a transcoded video which is saved in the output S3 bucket.",
- "This pattern deploys two S3 buckets, one AWS Lambda function and the required IAM Roles for making AWS Lambda capable of creating AWS Elemental MediaConvert jobs and write logs in Amazon CloudWatch Logs. AWS Lambda function is written in Python 3.9."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-mediaconvert",
- "templateURL": "serverless-patterns/s3-lambda-mediaconvert",
- "projectFolder": "s3-lambda-mediaconvert",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Video on Demand on AWS",
- "link": "https://aws.amazon.com/solutions/implementations/video-on-demand-on-aws/"
- },
- {
- "text": "AWS Elemental Media Convert",
- "link": "https://aws.amazon.com/mediaconvert/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_NAMED_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
.",
- "See the GitHub repo for detailed cleanup instructions."
- ]
- },
- "authors": [
- {
- "name": "Aryam Gutierrez",
- "image": "https://d38h74djm40icj.cloudfront.net/agutierrezl-image.png",
- "bio": "Aryam is a Solutions Architect at Amazon Web Service based in Spain",
- "linkedin": "aryaml",
- "twitter": "@aryam_gl"
- }
- ]
-}
diff --git a/s3-lambda-polly-sam/example-pattern.json b/s3-lambda-polly-sam/example-pattern.json
deleted file mode 100644
index 9c053336e..000000000
--- a/s3-lambda-polly-sam/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "S3 - Lambda - Polly",
- "description": "Invoke Polly through lambda on uploading file into S3",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how convert text to speech by uploading the text to S3.",
- "The S3 use event trigger to invoke lambda function with uses Polly for conversion to speech."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-polly-sam",
- "templateURL": "serverless-patterns/s3-lambda-polly-sam",
- "projectFolder": "s3-lambda-polly-sam",
- "templateFile": "s3-lambda-polly-sam/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Call lambda from S3 event trigger",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html"
- },
- {
- "text": "Amazon Polly - Text to speech conversion",
- "link": "https://aws.amazon.com/polly/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Bubai Bal",
- "image": "./bubai.png",
- "bio": "Solution Architect, AWS",
- "linkedin": "bubai-bal"
- }
- ]
-}
diff --git a/s3-lambda-rekognition-cdk/example-pattern.json b/s3-lambda-rekognition-cdk/example-pattern.json
deleted file mode 100644
index 5592c9298..000000000
--- a/s3-lambda-rekognition-cdk/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "S3 to Lambda to Rekognition",
- "description": "Use Amazon Rekognition to index a face in a Rekognition faces collection.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to index a face in Amazon Rekognition faces collection.",
- "Once a image with a headshot uploaded into S3 bucket, a Lambda function is triggered to index the face in the image in a Amazon Rekognition faces collection.",
- "Image name is used as the ExternalImageId within the faces collection. This is implemented with CDK (Typescript)"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-rekognition-cdk",
- "templateURL": "serverless-patterns/s3-lambda-rekognition-cdk",
- "projectFolder": "s3-lambda-rekognition-cdk",
- "templateFile": "s3-lambda-rekognition-cdk/s3-lambda-rekognition-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Rekognition",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/what-is.html"
- },
- {
- "text": "Amazon Rekognition Face Indexing",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/add-faces-to-collection-procedure.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/s3-lambda-rekognition-ddb-cdk/example-pattern.json b/s3-lambda-rekognition-ddb-cdk/example-pattern.json
deleted file mode 100644
index fe0c78550..000000000
--- a/s3-lambda-rekognition-ddb-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon S3 triggering AWS Lambda using Amazon Rekognition and writing Amazon DynamoDB",
- "description": "Detect labels in pictures using Amazon S3, AWS Lambda, Amazon Rekognition, and Amazon DynamoDB with Amazon Cloud Development Kit (AWS CDK)",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to deliver an event-driven mechanism to update DynamoDB for labels in images uploaded to S3.",
- "Implemented in CDK."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-rekognition-ddb-cdk",
- "templateURL": "serverless-patterns/s3-lambda-rekognition-ddb-cdk",
- "projectFolder": "s3-lambda-rekognition-ddb-cdk/lib",
- "templateFile": "s3-lambda-rekognition-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using AWS Lambda with Amazon S3",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3.html"
- },
- {
- "text": "Amazon Rekognition",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/what-is.html"
- },
- {
- "text": "Using AWS Lambda with Amazon DynamoDB",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html"
- }
-
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Chris Peter Francis",
- "image": "https://media.licdn.com/dms/image/D5603AQGSCw1U075kjQ/profile-displayphoto-shrink_800_800/0/1679337668977?e=2147483647&v=beta&t=18EMAaL8Qrm0hpxVVR525WEImFw1cyHrASNg3iYw6k4",
- "bio": "Chris is a Solution Architect for AWS Energy. Serverless advocate and enthusiast.",
- "linkedin": "chrispf"
- }
- ]
-}
\ No newline at end of file
diff --git a/s3-lambda-rekognition-iot-cdk/example-pattern.json b/s3-lambda-rekognition-iot-cdk/example-pattern.json
deleted file mode 100644
index 662ccfea6..000000000
--- a/s3-lambda-rekognition-iot-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Amazon S3, AWS Lambda, Amazon Rekognition and IoT Core to detect PPE",
- "description": "Send a IoT Core message when a worker is not in PPE (Personal Protective Equipment) compliance.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to deliver an event-driven mechanism to send an IoT core message for images uploaded to S3.",
- "Implemented in CDK."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-rekognition-iot-cdk",
- "templateURL": "serverless-patterns/s3-lambda-rekognition-iot-cdk",
- "projectFolder": "s3-lambda-rekognition-iot-cdk",
- "templateFile": "s3-lambda-rekognition-iot-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using AWS Lambda with Amazon S3",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3.html"
- },
- {
- "text": "Rekognition PPE API",
- "link": "https://docs.aws.amazon.com/rekognition/latest/dg/ppe-detection.html"
- },
- {
- "text": "Using Lambda with IoT Core Data Plane",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iot-data.html"
- }
-
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Chris Peter Francis",
- "image": "https://media.licdn.com/dms/image/D5603AQGSCw1U075kjQ/profile-displayphoto-shrink_800_800/0/1679337668977?e=2147483647&v=beta&t=18EMAaL8Qrm0hpxVVR525WEImFw1cyHrASNg3iYw6k4",
- "bio": "Chris is a Solution Architect for AWS Energy. Serverless advocate and enthusiast.",
- "linkedin": "chrispf"
- }
- ]
-}
diff --git a/s3-lambda-ses-terraform/example-pattern.json b/s3-lambda-ses-terraform/example-pattern.json
deleted file mode 100644
index a7a2f79d1..000000000
--- a/s3-lambda-ses-terraform/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Amazon S3 integration with AWS Lambda to send email notifications about the object",
- "description": "This pattern creates an Amazon API Gateway HTTP API and an AWS Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys a AWS Lambda Function and Amazon S3 bucket with the required IAM resources to run the application",
- "The Lambda Function consumes **ObjectCreated** events from an Amazon S3 bucket",
- "Further, Lambda code checks the object size if the uploded file size is <= 25MB then the object will be attached to the email for higher payloads Lambda generates a presigned URL and generates short URL which will be attached to the email"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-ses-terraform",
- "templateURL": "serverless-patterns/s3-lambda-ses-terraform",
- "projectFolder": "s3-lambda-ses-terraform",
- "templateFile": "s3-lambda-ses-terraform/deploy.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using AWS Lambda with Amazon S3",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3.html"
- },
- {
- "test": "AWS Lambda - the Basics",
- "link": "https://docs.aws.amazon.com/whitepapers/latest/serverless-architectures-lambda/aws-lambdathe-basics.html"
- },
- {
- "text": "How do I send email using Lambda and Amazon SES",
- "link": "https://aws.amazon.com/premiumsupport/knowledge-center/lambda-send-email-ses/"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Akhil Deshneni",
- "bio": "I am a Cloud Support Associate at AWS"
- }
- ]
- }
\ No newline at end of file
diff --git a/s3-lambda-transcribe-cdk/example-pattern.json b/s3-lambda-transcribe-cdk/example-pattern.json
deleted file mode 100644
index b0d41b3b7..000000000
--- a/s3-lambda-transcribe-cdk/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "S3 to Lambda to Transcribe",
- "description": "Create a Lambda with an S3 object created trigger that starts an Amazon Transcibe job and puts the results in anoter S3 Bucket",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern contains a sample AWS Cloud Development Kit (AWS CDK) template that deploys a Lambda Function with an S3 object created trigger to start an Amazon Transcribe job and place the results in another S3 bucket.",
- "This pattern deploys one Lambda Function and two S3 Buckets."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-transcribe-cdk",
- "templateURL": "serverless-patterns/s3-lambda-transcribe-cdk",
- "projectFolder": "s3-lambda-transcribe-cdk",
- "templateFile": "s3-lambda-transcribe-cdk/s3_lambda_transcribe_cdk.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Using an Amazon S3 trigger to invoke a Lambda function",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html"
- },
- {
- "text": "Guidelines and quotas - Amazon Transcribe",
- "link": "https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Davonte Blakely",
- "image": "https://media-exp1.licdn.com/dms/image/C4D03AQGLZ2P84tYXvg/profile-displayphoto-shrink_800_800/0/1611861641822?e=1666224000&v=beta&t=h1OihmKSYq4sCP3fCaSvbyTVqdMPiJfVq_Bmxd8Hsss",
- "bio": "Davonte is an Associate Cloud Developer with Amazon Web Services",
- "linkedin": "https://www.linkedin.com/in/davonte-blakely-ab3028171/"
- }
- ]
-}
diff --git a/s3-s3-replication-cdk/example-pattern.json b/s3-s3-replication-cdk/example-pattern.json
deleted file mode 100644
index b2b92ca9e..000000000
--- a/s3-s3-replication-cdk/example-pattern.json
+++ /dev/null
@@ -1,54 +0,0 @@
-{
- "title": "S3 replication to multiple S3 buckets with CDK",
- "description": "Replicate a S3 bucket to multiple S3 buckets. Implemented in CDK",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to replicate data on S3 bucket in to multiple S3 buckets.",
- "Filers are used to control to replicate data in to separate S3 buckets. Implemented with CDK (TypeScript)"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-s3-replication-cdk",
- "templateURL": "serverless-patterns/s3-s3-replication-cdk",
- "projectFolder": "s3-s3-replication-cdk",
- "templateFile": "s3-s3-replication-cdk/s3-s3-replication-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "S3 Object Replication",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "See the GitHub repo for deleting instructions."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
\ No newline at end of file
diff --git a/s3-to-eventbridge-claim-check-pattern/example-pattern.json b/s3-to-eventbridge-claim-check-pattern/example-pattern.json
deleted file mode 100644
index aed558a5d..000000000
--- a/s3-to-eventbridge-claim-check-pattern/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "S3 to EventBridge Claim Check pattern with event enrichment",
- "description": "Event-driven claim check pattern using S3 and EventBridge. Using Lambda to transform events into domain events with enrichment and presgined urls.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern will run when a file is uploaded to an s3 bucket. The events are transformed into domain events and presigned urls are generated for the content in the buckets for downstream consumers."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-to-eventbridge-claim-check-pattern",
- "templateURL": "serverless-patterns/s3-to-eventbridge-claim-check-pattern",
- "projectFolder": "s3-to-eventbridge-claim-check-pattern",
- "templateFile": "lib/s3-to-eventbridge-automatic-claim-check-pattern-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Claim Check messaging pattern",
- "link": "https://www.enterpriseintegrationpatterns.com/StoreInLibrary.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "David Boyne",
- "image": "../assets/images/resources/dboyne.jpg",
- "bio": "Senior Developer Advocate at AWS focusing on EDA and Serverless."
- }
- ]
-}
diff --git a/s3-trigger-lambda-glue-workflow-terraform/example-pattern.json b/s3-trigger-lambda-glue-workflow-terraform/example-pattern.json
deleted file mode 100644
index 56a0b5e1b..000000000
--- a/s3-trigger-lambda-glue-workflow-terraform/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "AWS S3 Trigger to AWS Lambda to AWS Glue workflow",
- "description": "This pattern creates an s3 bucket trigger that triggers a Lambda function(Whenever file lands), The Lambda function is used for triggering a Glue workflow with input parameters such as file key and bucket names. All elements covered in this pattern are built using Terraform.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "For cases where we need to process files using Glue jobs, we can use Glue Workflows to orchestrate our Glue jobs and Glue crawlers.",
- "S3 trigger is set up to trigger the Lambda on file upload event. To be able to trigger a Glue workflow with certain parameters, we use AWS Lambda to start glue workflows with parameters."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-trigger-lambda-glue-workflow-terraform",
- "templateURL": "serverless-patterns/s3-trigger-lambda-glue-workflow-terraform",
- "projectFolder": "s3-trigger-lambda-glue-workflow-terraform",
- "templateFile": "sfn_athena_cdk_python/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "AWS Glue - What is AWS Glue?",
- "link": "https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html"
- },
- {
- "text": "AWS boto3 library for Python- Glue",
- "link": "https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/glue.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Ananth Tirumanur",
- "image": "https://avatars.githubusercontent.com/u/105808773?v=4",
- "bio": "AWS Data Architect | Demonstrated leadership in Data related Technical Programs. 16 years of Proficiency in data management, analytics and visualization, data flow, data integrity, data automation and data science.",
- "linkedin": "https://www.linkedin.com/in/ananthtirumanur",
- "twitter": "akrish82"
- }
- ]
-}
diff --git a/s3-upload-presignedurl-api-cdk-ts/example-pattern.json b/s3-upload-presignedurl-api-cdk-ts/example-pattern.json
deleted file mode 100644
index 7d49608ae..000000000
--- a/s3-upload-presignedurl-api-cdk-ts/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "API Gateway and Lambda to generate S3 pre-signed URLS",
- "description": "Secured REST API that expose a Lambda function to generate S3 pre-signed URLs",
- "language": "TypeScript",
- "level": "300",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Web and mobile applications often provide their users ability to upload files, documents or pictures. A good and now common practice is to upload them directly to Amazon S3, using pre-signed URLs. To generate this pre-signed URL, you have to use the AWS SDK (generally in an AWS Lambda function), and expose the feature to the client through an API (with Amazon API Gateway).",
- "The infrastructure deployed by this pattern contains an API Gateway REST API, exposing a Lambda function that will generate the S3 pre-signed URL and return it to the client. The API, the Lambda function and the S3 bucket handle CORS headers so that there is no error on the client side. The API is protected by a Cognito User Pool."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-upload-presignedurl-api-cdk-ts",
- "templateURL": "serverless-patterns/s3-upload-presignedurl-api-cdk-ts",
- "projectFolder": "bin",
- "templateFile": "s3-upload-presignedurl-api-cdk.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "S3 Presigned URLs documentation",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/PresignedUrlUploadObject.html"
- },
- {
- "text": "Blog post on S3 pre-signed URLs",
- "link": "https://aws.amazon.com/blogs/compute/uploading-to-amazon-s3-directly-from-a-web-or-mobile-application/ "
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Jerome Van Der Linden",
- "image": "https://avatars.githubusercontent.com/u/117538?v=4",
- "bio": "Jerome is a Solutions Architect Builder at AWS. Passionate about building stuff using the AWS services, and especially the serverless ones.",
- "linkedin": "jeromevdl",
- "twitter": "jeromevdl"
- }
- ]
- }
\ No newline at end of file
diff --git a/sam-webapp-cognito/example-pattern.json b/sam-webapp-cognito/example-pattern.json
deleted file mode 100644
index 2ecaf935d..000000000
--- a/sam-webapp-cognito/example-pattern.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "title": "Serverless Web Application",
- "description": "Create a serverless web application using S3, CloudFront, API Gateway, Lambda, DynamoDB and Cognito.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to deploy a serverless web application using SAM. It uses S3, CloudFront, API Gateway, Lambda, DynamoDB and Cognito to build the application. This pattern uses CloudFront to serve both static and dynamic content with two origins to S3 and API Gateway. It also demonstrates how to protect the API using JWT authorizer with Cognito."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sam-webapp-cognito",
- "templateURL": "serverless-patterns/sam-webapp-cognito",
- "projectFolder": "sam-webapp-cognito",
- "templateFile": "sam-webapp-cognito/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Controlling access to HTTP API using JWT authorizer",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html"
- },
- {
- "text": "Amazon API Gateway HTTP API",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- }
- ]
- },
- "deploy": {
- "text": ["sam deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: sam delete
."]
- },
- "authors": [
- {
- "name": "Muthu Kumar",
- "image": "https://twitter.com/klmuthu/photo",
- "bio": "Senior Solutions Architect at AWS.",
- "linkedin": "klmuthu",
- "twitter": "@kmuthu"
- }
- ]
-}
diff --git a/sfn-callback-pattern-cdk-dotnet/example-pattern.json b/sfn-callback-pattern-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 26446f474..000000000
--- a/sfn-callback-pattern-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "AWS Step Functions callback pattern using dotnet",
- "description": "AWS Step Functions callback pattern sample in .NET",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "AWS Step functions callback pattern to implement approval through external API step",
- "text": [
- "In many workflow-based applications, certain steps in the process require a pause and wait for confirmation from external sources. After receiving the confirmation, the workflow can either resume or terminate the execution. One way to accomplish this is through the use of a callback pattern.",
- "To implement the callback pattern in AWS Step Functions, a task can be defined as a state in the state machine. When the state is executed, a task token is generated and sent to an external process or command. The external process or command can then use the task token to signal the completion of the task and resume the workflow execution.",
- "This pattern can be used in a variety of use cases, such as waiting for a user to approve a transaction or waiting for a third-party API to return data. By using the callback pattern in AWS Step Functions, developers can create more flexible and responsive workflows that can adapt to external events and conditions.."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-callback-pattern-cdk-dotnet",
- "templateURL": "serverless-patterns/sfn-callback-pattern-cdk-dotnet",
- "projectFolder": "sfn-callback-pattern-cdk-dotnet",
- "templateFile": "sfn-callback-pattern-cdk-dotnet/src/Deployment/CdkStack.cs"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/index.html"
- },
- {
- "text": "Callback Pattern Example",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/callback-task-sample-sqs.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk synth",
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo Readme.md for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "name": "Uma Shankar",
- "image": "https://avatars.githubusercontent.com/u/12746278?s=400&u=ff64e2f3321c310ff9c1d1a8ac7ab381f8e2bebc&v=4",
- "bio": "Application Development Consultant at AWS Professional Services.",
- "linkedin": "https://www.linkedin.com/in/uma-shankar-patel-061a7924/"
- }
- ]
-}
\ No newline at end of file
diff --git a/sfn-ecs-sam/example-pattern.json b/sfn-ecs-sam/example-pattern.json
deleted file mode 100644
index c6e1e9969..000000000
--- a/sfn-ecs-sam/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Step Functions workflow to invoke ECS tasks that read from S3",
- "description": "Step Functions - ECS Integration to run multiple ECS tasks in parallel",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to implement a State Function State machine to invoke parallel ECS tasks in fargate with input parameters to read files from S3 in order to process them in parallel.",
- "The template is implemented with SAM. The ECS task is implemented in python as a pattern reference but can be implemented in any language."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-ecs-sam",
- "templateURL": "serverless-patterns/sfn-ecs-sam",
- "projectFolder": "sfn-ecs-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html"
- },
- {
- "text": "Amazon Elastic Container Service",
- "link": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html"
- },
- {
- "text": "Amazon Simple Storage Service",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Praveen Koorse",
- "image": "https://avatars.githubusercontent.com/u/124192288",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "praveenkoorse"
- }
- ]
- }
-
diff --git a/sfn-lambda-function-crossaccount-terraform/example-pattern.json b/sfn-lambda-function-crossaccount-terraform/example-pattern.json
deleted file mode 100644
index 9888396d6..000000000
--- a/sfn-lambda-function-crossaccount-terraform/example-pattern.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "title": "Invoke cross account Lambda function directly via Step function",
- "description": "Create a Step function which invokes cross account Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern allows users from one account to invoke their Lambda function present in a different account via Step function and retrieve the desired output.",
- "This is highly efficient and useful when it comes to pulling cross account data all in one place."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/step-function-lambda-function-crossaccount-terraform",
- "templateURL": "serverless-patterns/step-function-lambda-function-crossaccount-terraform",
- "projectFolder": "step-function-lambda-function-crossaccount-terraform",
- "templateFile": "step-function-lambda-function-crossaccount-terraform/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial - How to invoke a Lambda function from Step function",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html"
- },
- {
- "text": "Orchestration examples",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-stepfunctions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init",
- "terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy",
- "terraform show"
- ]
- },
- "authors": [
- {
- "name": "Shivam Rajawat",
- "image": "https://drive.google.com/file/d/1q872K5V1RKFHCrkwGSssWNeIwug6ZLxO/view",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS and I love to solve complex problems.",
- "linkedin": "shivam-rajawat-a42b68124",
- "twitter": ""
- }
- ]
-}
\ No newline at end of file
diff --git a/sfn-lambda-function-crossaccount/example-pattern.json b/sfn-lambda-function-crossaccount/example-pattern.json
deleted file mode 100644
index 214eadae2..000000000
--- a/sfn-lambda-function-crossaccount/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Invoke cross account Lambda function directly via Step function",
- "description": "Create a Step function which invokes cross account Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample pattern allows users from one account to invoke their Lambda function present in a different account via Step function and retrieve the desired output.",
- "This is highly efficient and useful when it comes to pulling cross account data all in one place."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-lambda-function-crossaccount",
- "templateURL": "serverless-patterns/sfn-lambda-function-crossaccount",
- "projectFolder": "sfn-lambda-function-crossaccount",
- "templateFile": "sfn-lambda-function-crossaccount/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial - How to invoke a Lambda function from Step function",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html"
- },
- {
- "text": "Orchestration examples",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-stepfunctions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete --stack-name "
- ]
- },
- "authors": [
- {
- "name": "Shivam Rajawat",
- "image": "https://shivamrajawat.s3.amazonaws.com/shivamrajawat.jpg",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS and I love to solve complex problems.",
- "linkedin": "shivam-rajawat-a42b68124"
- }
- ]
-}
\ No newline at end of file
diff --git a/sfn-lambda-lambda/example-pattern.json b/sfn-lambda-lambda/example-pattern.json
deleted file mode 100644
index 874f3865b..000000000
--- a/sfn-lambda-lambda/example-pattern.json
+++ /dev/null
@@ -1,66 +0,0 @@
-{
- "title": "Step Function to Lambda to Lambda",
- "description": "Create Step Functions Standard Workflow that orchestrates two Lambda functions",
- "language": "NodeJS",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use a state machine to orchestrate the execution of two Lambda functions",
- "Once the state machine is executed the first Lambda function gets invoked. The output from this function is used as an event to trigger another Lambda function",
- "This pattern deploys a State Machine and two Lambda Functions."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-lambda-lambda",
- "templateURL": "serverless-patterns/sfn-lambda-lambda",
- "projectFolder": "sfn-lambda-lambda",
- "templateFile": "sfn-lambda-lambda/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating a Step Functions State Machine That Uses Lambda",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-creating-lambda-state-machine.html"
- },
- {
- "text": "Handling Error Conditions Using a Step Functions State Machine",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-handling-error-conditions.html"
- },
- {
- "text": "AWS CLI start-execution",
- "link": "https://docs.aws.amazon.com/cli/latest/reference/stepfunctions/start-execution.html#start-execution"
- },
- {
- "text": "Create a Step Functions State Machine Using AWS SAM",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-state-machine-using-sam.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: same delete
."
- ]
- },
- "authors": [
- {
- "name": "Saborni Bhattacharya",
- "image": "https://drive.google.com/file/d/1AZFquOkafEQRUlrT4hKOtIbt4Cq66SHd/view?usp=sharing",
- "bio": "I am Saborni Bhattacharya and I love making technical contents on my YouTube channel - https://www.youtube.com/channel/UCpYl6SiNRBfcZoi4EKqIwog. Here is my blog link as well - https://learnandexplorewithsab.blogspot.com/",
- "linkedin": "https://www.linkedin.com/in/saborni-bhattacharya-5b523812a/"
- }
- ]
- }
\ No newline at end of file
diff --git a/sfn-to-sfn-cdk/example-pattern.json b/sfn-to-sfn-cdk/example-pattern.json
deleted file mode 100644
index 13410e54e..000000000
--- a/sfn-to-sfn-cdk/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "Start Step Function execution within Step Function",
- "description": "Start a Step Function execution as a step in another Step Function.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create 2 State Machines and call one within the other's workflow.",
- "Here callback pattern is used to hold the parent State Machine's execution until the child State Machine's execution is completed."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sfn-to-sfn-cdk",
- "templateURL": "serverless-patterns/sfn-to-sfn-cdk",
- "projectFolder": "sfn-to-sfn-cdk",
- "templateFile": "sfn-to-sfn-cdk/sfn-to-sfn-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://aws.amazon.com/step-functions/getting-started/"
- },
- {
- "text": "AWS Step Functions SDK integrations",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/supported-services-awssdk.html"
- },
- {
- "text": "AWS Step Functions Executions as an Integrated Service",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-stepfunctions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
\ No newline at end of file
diff --git a/sns-firehose-opensearch/example-pattern.json b/sns-firehose-opensearch/example-pattern.json
deleted file mode 100644
index ca182d865..000000000
--- a/sns-firehose-opensearch/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Cloudwatch Alarm to SNS with Kinesis Firehose Fanout to Opensearch",
- "description": "Analysing Cloudwatch Alarms in OpenSearch",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The purpose of this pattern is to deploy the infrastructure necessary to use Kinesis Data Firehose to fanout Cloudwatch Alarms using SNS to OpenSearch for analytics purposes."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-firehose-opensearch",
- "templateURL": "serverless-patterns/sns-firehose-opensearch",
- "projectFolder": "sns-firehose-opensearch",
- "templateFile": "sns-firehose-opensearch/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Fanout to Kinesis Data Firehose delivery streams",
- "link": "https://docs.amazonaws.cn/en_us/sns/latest/dg/sns-firehose-as-subscriber.html"
- },
- {
- "text": "Introducing message archiving and analytics for Amazon SNS",
- "link": "https://aws.amazon.com/blogs/compute/introducing-message-archiving-and-analytics-for-amazon-sns/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided --capabilities CAPABILITY_NAMED_IAM"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME"
- ]
- },
- "authors": [
- {
- "name": "Abhishek Agawane",
- "image": "https://drive.google.com/file/d/1E-5koDaKEaMUtOctX32I9TLwfh3kgpAq/view?usp=drivesdk",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS who loves baking pizzas",
- "linkedin": "https://www.linkedin.com/in/agawabhi/"
- }
- ]
-}
diff --git a/sns-firehose/example-pattern.json b/sns-firehose/example-pattern.json
deleted file mode 100644
index f23e7e49f..000000000
--- a/sns-firehose/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "SNS Archiving/Analytics with Kinesis Firehose Fanout",
- "description": "Transform incoming source data and deliver the transformed data to destinations.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The purpose of this pattern is to deploy the infrastructure necessary to use Kinesis Data Firehose to fanout SNS messages to storage and analytics services.",
- "Through Kinesis Data Firehose delivery streams, you can fan out Amazon SNS notifications to Amazon Simple Storage Service (Amazon S3), Amazon Redshift, Amazon OpenSearch Service (OpenSearch Service), and to third-party service providers such as Datadog, New Relic, MongoDB, and Splunk.",
- "This pattern delivers SNS messages to Amazon S3 for archival, compliance, or analytics purposes."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-firehose",
- "templateURL": "serverless-patterns/sns-firehose",
- "projectFolder": "sns-firehose",
- "templateFile": "sns-firehose/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Fanout to Kinesis Data Firehose delivery streams",
- "link": "https://docs.amazonaws.cn/en_us/sns/latest/dg/sns-firehose-as-subscriber.html"
- },
- {
- "text": "Introducing message archiving and analytics for Amazon SNS",
- "link": "https://aws.amazon.com/blogs/compute/introducing-message-archiving-and-analytics-for-amazon-sns/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: aws cloudformation delete-stack --stack-name STACK_NAME"
- ]
- },
- "authors": [
- {
- "name": "Maya Flores",
- "image": "https://media-exp1.licdn.com/dms/image/C4E03AQGFaDVfkIJi4g/profile-displayphoto-shrink_200_200/0/1620953260457?e=1671062400&v=beta&t=pVt_BUU-r7MtlMwcOxgXgtaUM2tVRe4CUtlUknM--os",
- "bio": "Partner Solutions Architect @ AWS. Serverless enthusiast.",
- "linkedin": "maya-m-flores"
- }
- ]
-}
diff --git a/sns-lambda-slack-integration-SAM/example-pattern.json b/sns-lambda-slack-integration-SAM/example-pattern.json
deleted file mode 100644
index a0ef79a3d..000000000
--- a/sns-lambda-slack-integration-SAM/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "SNS to Lambda to Slack Integration via SAM",
- "description": "Creating a SNS topic to publish to Slack channel via AWS Lambda",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This is a sample project where the message will be published from SNS topic to aws lambda which triggers notification to slack channel."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-lambda-slack-integration-SAM",
- "templateURL": "serverless-patterns/sns-lambda-slack-integration-SAM",
- "projectFolder": "sns-lambda-slack-integration-SAM",
- "templateFile": "sns-lambda-slack-integration-SAM/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS SNS to AWS Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/with-sns-example.html"
- },
- {
- "text": "AWS Lambda with Slack integration",
- "link": "https://serverlessrepo.aws.amazon.com/applications/us-east-1/289559741701/lambda-to-slack"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Ibraheem Khaleel",
- "image": "",
- "bio": "AWS Cloud Support Engineer",
- "linkedin": "",
- "twitter": ""
- }
- ]
-}
diff --git a/sns-sqs-fanout-pattern-cdk-dotnet/example-pattern.json b/sns-sqs-fanout-pattern-cdk-dotnet/example-pattern.json
deleted file mode 100644
index 6e71bfd8f..000000000
--- a/sns-sqs-fanout-pattern-cdk-dotnet/example-pattern.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "title": "Fan-out pattern using SNS-SQS filters",
- "description": "Creates SNS topic and Sqs queues with message body based and attribute based filter using configuration file (appSettings.json)",
- "language": ".NET",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK application demonstrates how to create fan-out pattern using sns topic and sqs queues using subscription filters. ",
- "Number of queues required and type of filter (Message attribute based or message body based) can be defined in appSettings.json (Sample json is provided, replace queue names and filter by conditions as needed)."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-sqs-fanout-pattern-cdk-dotnet",
- "projectFolder": "sns-sqs-fanout-pattern-cdk-dotnet",
- "readmeURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-sqs-fanout-pattern-cdk-dotnet/README.md",
- "templateURL": "serverless-patterns/sns-sqs-fanout-pattern-cdk-dotnet",
- "templateFile": "src/Cdk/CdkStack.cs"
- }
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Vedanayagan Damodaran",
- "image": "https://avatars.githubusercontent.com/u/55715043?v=4",
- "bio": "Vedanayagan Damodaran is a Cloud Application Architect at Amazon Web Services.",
- "linkedin": "vedanayagand"
- }
- ]
-}
\ No newline at end of file
diff --git a/sns-sqs-lambda-cdk/example-pattern.json b/sns-sqs-lambda-cdk/example-pattern.json
deleted file mode 100644
index f656cf63b..000000000
--- a/sns-sqs-lambda-cdk/example-pattern.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "title": "Lambda to SNS to SQS to Lambda",
- "description": "Creates one Lambda function that sends a message to an SNS topic. That topic sends the message to a SQS queue and finally another Lambda picks the message.",
- "language": "Typescript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to create a SNS + SQS system, in which all the messages sent by a publisher are sent to all the consumers, and there is a buffer between the message producer and the consumer. In this way the consumers don't get overload with messages. "
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-sqs-lambda-cdk",
- "templateURL": "serverless-patterns/sns-sqs-lambda-cdk",
- "projectFolder": "sns-sqs-lambda-cdk",
- "templateFile": "src/lib/sns-sqs-lambda-cdk.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS SNS",
- "link": "https://aws.amazon.com/sns/"
- }
- ]
- },
- "deploy": {
- "text": ["cdk deploy"]
- },
- "testing": {
- "text": ["See the GitHub repo for detailed testing instructions."]
- },
- "cleanup": {
- "text": ["Delete the stack: cdk delete
."]
- },
- "authors": [
- {
- "name": "Marcia Villalba",
- "image": "link-to-your-photo.jpg",
- "bio": "Your bio.",
- "linkedin": "linked-in-ID",
- "twitter": "twitter-handle"
- }
- ]
-}
diff --git a/sns-sqs-lambda-rust-sam/example-pattern.json b/sns-sqs-lambda-rust-sam/example-pattern.json
deleted file mode 100644
index f4143d310..000000000
--- a/sns-sqs-lambda-rust-sam/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Amazon SNS to Amazon SQS to AWS Lambda",
- "description": "The SAM template deploys a SNS topic and an SQS queue a. The SQS queue is subscribed to the SNS topic. SNS invokes the SQS queue when new messages are available. When messages are sent to the SNS topic, they are delivered as a JSON event payload to the SQS queue. SQS invokes the Lambda function when new messages are available.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Send the SNS message.",
- "Then check the logs in Cloudwatch logs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-sqs-lambda-rust-sam",
- "templateURL": "serverless-patterns/sns-sqs-lambda-rust-sam",
- "projectFolder": "sns-sqs-lambda-rust-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon SNS",
- "link": "https://aws.amazon.com/sns/"
- },
- {
- "text": "Amazon SQS",
- "link": "https://aws.amazon.com/sqs/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/sns-sqs-message-content-router-cdk/example-pattern.json b/sns-sqs-message-content-router-cdk/example-pattern.json
deleted file mode 100644
index c43f192d7..000000000
--- a/sns-sqs-message-content-router-cdk/example-pattern.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "title": "Content based router with SNS and SQS filters",
- "description": "Create an SNS topic and multiple SQS queues with content filtered based on configurable criteria.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This CDK project demonstrates how to create a Message Content-based routing pattern using Amazon SNS and Amazon SQS.",
- "The number of Queues and the Filters are dynamically defined inside the stackconfiguration.json file. The solution can be adapted for any specific requirement.",
- "This architecture is an implementation of the Integration pattern: Content-Based Message Router explained in the Integration Patterns book.",
- "The content can be filtered by attributes or by message body which grants full flexibility."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sns-sqs-message-content-router-cdk",
- "templateURL": "serverless-patterns/sns-sqs-message-content-router-cdk",
- "projectFolder": "sns-sqs-message-content-router-cdk",
- "templateFile": "sns-sqs-message-content-router-cdk/src/lib/src-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon SNS subscription filter policies",
- "link": "https://docs.aws.amazon.com/sns/latest/dg/sns-subscription-filter-policies.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destroy
."
- ]
- },
- "authors": [
- {
- "name": "Raffaele Garofalo (Raf)",
- "image": "https://avatars.githubusercontent.com/raffaeu",
- "bio": "Raffaele Garofalo (Raf) is a Senior Solutions Architect at AWS and member of the AWS Serverless TFC (Technical Field Communities).",
- "linkedin": "raffaeu",
- "twitter": "raffaeu"
- }
- ]
-}
diff --git a/sqs-fargate-cdk-python/example-pattern.json b/sqs-fargate-cdk-python/example-pattern.json
deleted file mode 100644
index ad020e671..000000000
--- a/sqs-fargate-cdk-python/example-pattern.json
+++ /dev/null
@@ -1,73 +0,0 @@
-{
- "title": "Amazon SQS connected to an Amazon ECS",
- "description": "This pattern show how to scale an ECS cluster task that is connected to SQS queue.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "It creates an SQS and an ECS cluster, for every message sent to queue a new task is created on the cluster",
- "and the message is consumed by a Python application inside a Docker container."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sqs-fargate-cdk-python",
- "templateURL": "serverless-patterns/sqs-fargate-cdk-python",
- "projectFolder": "sqs-fargate-cdk-python",
- "templateFile": "sqs-fargate-cdk-python/sqs_fargate_cdk_python/sqs_fargate_cdk_python.py"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS CDK Patterns",
- "link": "https://cdkpatterns.com/"
- },
- {
- "text": "AWS SQS",
- "link": "https://aws.amazon.com/sqs/"
- },
- {
- "text": "AWS Fargate",
- "link": "https://aws.amazon.com/fargate/"
- },
- {
- "text": "AWS ECS",
- "link": "https://aws.amazon.com/ecs/"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "cdk destroy"
- ]
- },
- "authors": [
- {
- "name": "Gustavo Martim",
- "image": "https://pbs.twimg.com/profile_images/1382662130462306311/Be4jS62J_400x400.jpg",
- "bio": "Cloud Application Architect at AWS.",
- "linkedin": "https://www.linkedin.com/in/gumar/",
- "twitter": ""
- },
- {
- "name": "Mart Noten",
- "image": "https://media-exp1.licdn.com/dms/image/C5603AQETLKyceFuJnw/profile-displayphoto-shrink_800_800/0/1567630510954?e=2147483647&v=beta&t=CpkrTXviK63-4VLr89iut5lCX-M9SsxE-yTXOl6LBMQ",
- "bio": "Consultant, AppDev at AWS.",
- "linkedin": "https://www.linkedin.com/in/martnoten/",
- "twitter": ""
- }
- ]
-}
diff --git a/sqs-lambda-rust-sam/example-pattern.json b/sqs-lambda-rust-sam/example-pattern.json
deleted file mode 100644
index 0afd3958c..000000000
--- a/sqs-lambda-rust-sam/example-pattern.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "title": "Amazon SQS to AWS Lambda",
- "description": "The SAM template deploys a Lambda function, an SQS queue and the IAM permissions required to run the application. SQS invokes the Lambda function when new messages are available.",
- "language": "Rust",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Send the SQS message.",
- "Then check the logs in Cloudwatch logs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/sqs-lambda-rust-sam",
- "templateURL": "serverless-patterns/sqs-lambda-rust-sam",
- "projectFolder": "sqs-lambda-rust-sam",
- "templateFile": "template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon SQS",
- "link": "https://aws.amazon.com/sqs/"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "headline": "Presented by Daniele Frasca",
- "name": "Daniele Frasca",
- "image": "https://serverlessland.com/assets/images/resources/contributors/ext-daniele-frasca.jpg",
- "bio": "I am Daniele Frasca serverless enthusiast. I build and architect serverless applications at scale.",
- "linkedin": "daniele-frasca",
- "twitter": "dfrasca80"
- }
- ]
-}
diff --git a/sqs-stepfunctions-pipes-pattern/example-pattern.json b/sqs-stepfunctions-pipes-pattern/example-pattern.json
deleted file mode 100644
index d02f20693..000000000
--- a/sqs-stepfunctions-pipes-pattern/example-pattern.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "title": "Exponential Backoff in SQS Processing with Step Functions and EventBridge Pipes",
- "description": "This pattern demonstrates a seamless integration between an SQS queue and AWS Step Functions using Amazon EventBridge Pipes. It enables direct routing of messages from an SQS queue into a Step Functions state machine, which orchestrates the processing flow and manages AWS Lambda invocation errors. When Lambda encounters an error, the erroneous message is directed to an SQS Dead Letter Queue (DLQ) for further inspection or reprocessing.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Messages sent to the SQS queue are routed through EventBridge Pipes to a Step Functions state machine. The state machine manages message processing and invokes a Lambda function, which is intentionally set with a reserved concurrency of 0 to simulate throttling.",
- "When errors, such as throttling, occur in the Lambda function, the state machine employs an exponential backoff retry strategy that starts with a 5-second delay, doubling this delay after each subsequent retry, for up to 6 maximum retry attempts. If all retry attempts are exhausted, the message is directed to a Dead Letter Queue (DLQ) for further analysis."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns",
- "templateURL": "serverless-patterns/sqs-stepfunctions-pipes-pattern",
- "projectFolder": "sqs-stepfunctions-pipes-pattern",
- "templateFile": "template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Amazon Simple Queue Service (SQS)",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html"
- },
- {
- "text": "AWS Step Functions",
- "link": "https://aws.amazon.com/step-functions/"
- },
- {
- "text": "AWS Lambda",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "Amazon EventBridge Pipes",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "Retrieve the Queue URL from the outputs of the SAM deployment and send a test message using AWS CLI. Monitor the Step Functions state machine to observe the execution. If the Lambda function fails, check the DLQ for the erroneous message."
- ]
- },
- "cleanup": {
- "text": [
- "To delete the deployed resources, use: sam delete --stack-name YOUR_STACK_NAME. Replace YOUR_STACK_NAME with the name you provided for your stack during deployment."
- ]
- },
- "authors": [
- {
- "name": "Mohammed Atiq",
- "image": "https://i.postimg.cc/N0804zKg/photo.jpg",
- "bio": "Solutions Architect at AWS and Serverless enthusiast.",
- "linkedin": "https://www.linkedin.com/in/mohammed-a-2980151b7"
- }
- ]
-}
\ No newline at end of file
diff --git a/step-function-sync-rest-api/example-pattern.json b/step-function-sync-rest-api/example-pattern.json
deleted file mode 100644
index cba261534..000000000
--- a/step-function-sync-rest-api/example-pattern.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "title": "Integrate Express State Machine with Rest API using StartSyncExecution API call",
- "description": "Using mapping template and StartSyncExecution API call, integrating Express State Machine with Rest API",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to Integrate Express State Machine with Rest API"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/step-function-sync-rest-api",
- "templateURL": "serverless-patterns/step-function-sync-rest-api",
- "projectFolder": "step-function-sync-rest-api",
- "templateFile": "step-function-sync-rest-api/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Creating a Step Functions API Using API Gateway",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-api-gateway.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Himanshu Goyal",
- "image": "https://drive.google.com/file/d/1huHQQHRlYQ3gxrJob9pXlwE5zv5CI996/view?usp=drivesdk",
- "bio": "A Serverless Cloud Engineer and technical writer, working towards building efficient and scalable solutions using AWS services.",
- "linkedin": "https://www.linkedin.com/in/himanshugoyal20"
- }
- ]
- }
-
diff --git a/step-functions-athena-glue-sam/example-pattern.json b/step-functions-athena-glue-sam/example-pattern.json
deleted file mode 100644
index 5c636864c..000000000
--- a/step-functions-athena-glue-sam/example-pattern.json
+++ /dev/null
@@ -1,58 +0,0 @@
-{
- "title": "Using Step Functions to query Athena S3 data - SAM",
- "description": "This serverless example helps to process all results from S3 data fetched in Athena Query using Step Functions.",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works:",
- "text": [
- "This serverless pattern uses AWS Athena allows to analyze data in Amazon S3 using standard SQL.",
- "A Glue crawler creates a database table from the S3 data which is queried by Athena.",
- "Step Function is leveraged to query as well as process each result in this data received from Athena with the help of NextToken parameter.
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/step-functions-athena-glue-sam",
- "templateURL": "serverless-patterns/step-functions-athena-glue-sam",
- "projectFolder": "step-functions-athena-glue-sam",
- "templateFile": "step-functions-athena-glue-sam/template.yml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Tutorial: Step Functions to Athena connection",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/connect-athena.html"
- },
- {
- "text": "Using AWS Glue to connect to data sources in Amazon S3",
- "link": "https://docs.aws.amazon.com/athena/latest/ug/data-sources-glue.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy --guided"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Abhishek Agawane",
- "image": "https://drive.google.com/file/d/1E-5koDaKEaMUtOctX32I9TLwfh3kgpAq/view?usp=drivesdk",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS who loves baking pizzas",
- "linkedin": "https://www.linkedin.com/in/agawabhi/"
- }
- ]
-}
diff --git a/stepfunction-polly-s3-cdk/example-pattern.json b/stepfunction-polly-s3-cdk/example-pattern.json
deleted file mode 100644
index 01d8259ce..000000000
--- a/stepfunction-polly-s3-cdk/example-pattern.json
+++ /dev/null
@@ -1,63 +0,0 @@
-{
- "title": "Step Functions to Polly to S3 with CDK (Typescript)",
- "description": "Step Functions - Polly SDK integration for text to speech output as mp3 into s3 .",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to implement a State Function State machine to synthesize given words using Amazon Polly and save each mp3 generated in a S3 bucket.",
- "This is implemented with CDK (Typescript)"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/stepfunction-polly-s3-cdk",
- "templateURL": "serverless-patterns/stepfunction-polly-s3-cdk",
- "projectFolder": "stepfunction-polly-s3-cdk",
- "templateFile": "stepfunction-polly-s3-cdk/stepfunction-polly-s3-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html"
- },
- {
- "text": "Amazon Polly",
- "link": "https://docs.aws.amazon.com/polly/latest/dg/what-is.html"
- },
- {
- "text": "Amazon Polly Synthesis Task",
- "link": "https://docs.aws.amazon.com/polly/latest/dg/API_StartSpeechSynthesisTask.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/stepfunction-ses-cdk/example-pattern.json b/stepfunction-ses-cdk/example-pattern.json
deleted file mode 100644
index 9dab7c83c..000000000
--- a/stepfunction-ses-cdk/example-pattern.json
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- "title": "Step Functions to Amazon SES with CDK (Typescript)",
- "description": "Step Functions - SES SDK integration to send email.",
- "language": "TypeScript",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This project demonstrates how to implement a State Function State machine to send email with Amazon SES with SDK integrations",
- "This is implemented with CDK (Typescript)"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/stepfunction-ses-cdk",
- "templateURL": "serverless-patterns/stepfunction-ses-cdk",
- "projectFolder": "stepfunction-ses-cdk",
- "templateFile": "stepfunction-ses-cdk/stepfunction-ses-cdk-stack.ts"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Step Functions",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html"
- },
- {
- "text": "Amazon SES",
- "link": "https://docs.aws.amazon.com/ses/latest/dg/Welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "cdk deploy --all --parameters sesFromEmail='YOUR_SES_FROM_EMAIL_ADDRESS'"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk destory --all
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
- }
-
\ No newline at end of file
diff --git a/stepfunctions-eventbridge-schedule-sam-python/example-pattern.json b/stepfunctions-eventbridge-schedule-sam-python/example-pattern.json
deleted file mode 100644
index 7cc73005b..000000000
--- a/stepfunctions-eventbridge-schedule-sam-python/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "Step Functions to EventBridge Scheduler with SAM & Python",
- "description": "Simple pattern that creates a EventBridge Scheduler one time schedule using Step Functions SDK integration",
- "language": "Python",
- "level": "200",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "Creates a one time schedule in EventBridge Scheduler when the Step Functions execution runs."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/stepfunctions-eventbridge-schedule-sam-python",
- "templateURL": "serverless-patterns/stepfunctions-eventbridge-schedule-sam-python",
- "projectFolder": "stepfunctions-eventbridge-schedule-sam-python",
- "templateFile": "stepfunctions-eventbridge-schedule-sam-python/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "Introducing Amazon EventBridge Scheduler",
- "link": "https://aws.amazon.com/blogs/compute/introducing-amazon-eventbridge-scheduler/"
- },
- {
- "text": "Amazon EventBridge Scheduler Docs",
- "link": "https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Pubudu Jayawardana",
- "image": "https://avatars.githubusercontent.com/u/1263087",
- "bio": "AWS Community Builder in Serverless category. Serverless advocate and enthusiast.",
- "linkedin": "pubudusj",
- "twitter": "@pubudusj"
- }
- ]
-}
diff --git a/systems-manager-automation-to-stepfunctions/example-pattern.json b/systems-manager-automation-to-stepfunctions/example-pattern.json
deleted file mode 100644
index ff5ad4921..000000000
--- a/systems-manager-automation-to-stepfunctions/example-pattern.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "title": "Amazon Systems Manager automation to AWS Step Functions",
- "description": "Create SSM automation document that invokes Step functions.",
- "language": "Python",
- "level": "200",
- "framework": "CDK",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern demonstrates how to invoke a Step Function from a Systems Manager automation document ",
- "It pass's the document run time execution parameters as input payload for the Step Functions. ",
- "This pattern creates the Snapshot of RDS database"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/cd serverless-patterns/systems-manager-automation-to-stepfunctions",
- "templateURL": "systems-manager-automation-to-stepfunctions",
- "projectFolder": "src",
- "templateFile": "src/create-snapshot-lamda-function.py"
-
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS Systems Manager Documentation",
- "link": "https://docs.aws.amazon.com/systems-manager/index.html"
- },
- {
- "text": "Run AWS Systems Manager automation tasks synchronously from AWS Step Functions",
- "link": "https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/run-aws-systems-manager-automation-tasks-synchronously-from-aws-step-functions.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: cdk delete
."
- ]
- },
- "authors": [
- {
- "name": "Lalit Sahu",
- "image": "https://github.com/lalit21984/profile-pic/blob/main/hyperbadge_lksahu.png",
- "bio": "Associate DevOps Consultant on the AWS Professional Services Team Serving Customers in the East Cost and Central region of United States.",
- "linkedin": "https://www.linkedin.com/in/lalit-kumar-sahu-3152a210b/",
- "twitter": "twitter-handle"
- },
- {
- "name": "Revanth Reddy",
- "image": "https://avatars.githubusercontent.com/u/20147266?s=400&u=a818d4774c69a221d1f9bd58963aa804c44f572e&v=4",
- "bio": "DevOps Architect on the AWS Professional Services Team Serving Customers in the South Central region of United States.",
- "linkedin": "https://www.linkedin.com/in/revanth-t-reddy-792aa2162/",
- "twitter": "twitter-handle"
- },
- {
- "name": "Zukhra Salieva",
- "image": "https://github.com/zsalieva/profile_picture/blob/main/Zukhra_Salieva_profile_pic.png",
- "bio": "Associate DevOps Consultant on the AWS Professional Services Team Serving Customers in the East Cost and Central region of United States.",
- "linkedin": "https://www.linkedin.com/in/zukhra-s-513328191",
- "twitter": "twitter-handle"
- }
- ]
- }
diff --git a/terraform-apigw-http-lambda/example-pattern.json b/terraform-apigw-http-lambda/example-pattern.json
deleted file mode 100644
index a8f8f57e8..000000000
--- a/terraform-apigw-http-lambda/example-pattern.json
+++ /dev/null
@@ -1,79 +0,0 @@
-{
- "title": "Amazon API Gateway (HTTP) to AWS Lambda",
- "description": "This pattern creates an Amazon API Gateway (HTTP) and an AWS Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an Amazon API Gateway (HTTP) with a default route and basic CORS configuration.",
- "The default route is integrated with an AWS Lambda function written in Python.",
- "The function logs the incoming API event (v2) and context object to an Amazon CloudWatch Logs log group and returns basic information about the event to the caller."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-apigw-http-lambda",
- "templateURL": "serverless-patterns/terraform-apigw-http-api-lambda",
- "projectFolder": "terraform-apigw-http-lambda",
- "templateFile": "terraform-apigw-http-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS API Gateway v2 (HTTP/Websocket) module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-apigateway-v2"
- },
- {
- "test": "Terraform AWS API Gateway v2 (HTTP/Websocket) examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-apigateway-v2/tree/master/examples"
- },
- {
- "text": "Working with HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html"
- },
- {
- "text": "Working with AWS Lambda proxy integrations for HTTP APIs",
- "link": "https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-lambda.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-cloudtrail-lambda-slack/example-pattern.json b/terraform-cloudtrail-lambda-slack/example-pattern.json
deleted file mode 100644
index b54f4ef72..000000000
--- a/terraform-cloudtrail-lambda-slack/example-pattern.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "title": "AWS Lambda to Cloudtrail data events",
- "description": "This pattern demonstrates use of Cloudtrail lambda data events for monitoring invocations via Slack notifications ",
- "language": "Python",
- "level": "200",
- "framework": "Terraform",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys an AWS Cloudtrail which pushes AWS Lambda function data events to Cloudwatch ",
- "The Cloudwatch has a lambda subscription filter to fetch only particular invocation events.",
- "The pattern deploys a lambda function which parses and forwards the Cloudwatch event over Slack notification"
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-cloudtrail-lambda-slack",
- "templateURL": "serverless-patterns/terraform-cloudtrail-lambda-slack",
- "projectFolder": "terraform-cloudtrail-lambda-slack",
- "templateFile": "terraform-cloudtrail-lambda-slack/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed execution instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Abhishek Agawane",
- "image": "https://drive.google.com/file/d/1E-5koDaKEaMUtOctX32I9TLwfh3kgpAq/view?usp=drivesdk",
- "bio": "I am a Cloud Support Engineer (Serverless) at AWS who loves cloud computing",
- "linkedin": "https://www.linkedin.com/in/agawabhi/"
- }
- ]
-}
diff --git a/terraform-dynamodb-streams-lambda/example-pattern.json b/terraform-dynamodb-streams-lambda/example-pattern.json
deleted file mode 100644
index 183d6a75e..000000000
--- a/terraform-dynamodb-streams-lambda/example-pattern.json
+++ /dev/null
@@ -1,81 +0,0 @@
-{
- "title": "Amazon DynamoDB Streams to AWS Lambda",
- "description": "This pattern creates an Amazon DynamoDB table with streaming enabled, AWS Lambda function and setup event sourcing from DynamoDB to Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon DynamoDB table with streaming enabled, AWS Lambda function and setup event sourcing from DynamoDB to Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-dynamodb-streams-lambda",
- "templateURL": "serverless-patterns/terraform-dynamodb-streams-lambda",
- "projectFolder": "terraform-dynamodb-streams-lambda",
- "templateFile": "terraform-dynamodb-streams-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS Lambda event source mapping examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples/event-source-mapping"
- },
- {
- "test": "Terraform AWS DynamoDB table module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-dynamodb-table"
- },
- {
- "test": "Terraform AWS DynamoDB table examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-dynamodb-table/tree/master/examples"
- },
- {
- "text": "Lambda event source mappings",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html"
- },
- {
- "text": "Amazon DynamoDB Developer Guide",
- "link": "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-eventbridge-scheduled-lambda/example-pattern.json b/terraform-eventbridge-scheduled-lambda/example-pattern.json
deleted file mode 100644
index 30ee238ec..000000000
--- a/terraform-eventbridge-scheduled-lambda/example-pattern.json
+++ /dev/null
@@ -1,85 +0,0 @@
-{
- "title": "Scheduled EventBridge rule for Lambda",
- "description": "Create a scheduled EventBridge rule that invokes a Lambda function",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This template deploys a Lambda function that is triggered by an EventBridge periodically. In this example, the Lambda function logs text to the console every minute."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-eventbridge-scheduled-lambda",
- "templateURL": "serverless-patterns/terraform-eventbridge-scheduled-lambda",
- "projectFolder": "terraform-eventbridge-scheduled-lambda",
- "templateFile": "terraform-eventbridge-scheduled-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS Lambda triggers examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples/triggers"
- },
- {
- "test": "Terraform AWS EventBridge module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-eventbridge"
- },
- {
- "test": "Terraform AWS EventBridge examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-eventbridge/tree/master/examples"
- },
- {
- "text": "Using AWS Lambda with Amazon EventBridge (CloudWatch Events)",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/services-cloudwatchevents.html"
- },
- {
- "text": "Amazon EventBridge User Guide",
- "link": "https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "Reducing custom code by using advanced rules in Amazon EventBridge",
- "link": "https://aws.amazon.com/blogs/compute/reducing-custom-code-by-using-advanced-rules-in-amazon-eventbridge/"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-lambda-layer/example-pattern.json b/terraform-lambda-layer/example-pattern.json
deleted file mode 100644
index 049e02a59..000000000
--- a/terraform-lambda-layer/example-pattern.json
+++ /dev/null
@@ -1,75 +0,0 @@
-{
- "title": "Lambda Function and Lambda Layers",
- "description": "Create a Lambda Function that has a Lambda Layer added to it",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern deploys a Lambda Function and attaches a Lambda Layer to it.",
- "The function imports `mysql-connector-python` package that is provisioned using Lambda Layer and prints a list of files in `/opt` directory. `/opt` is a location where Lambda Layers attach content.",
- "Using layers reduces the size of uploaded deployment archives and makes it faster to deploy your code."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-lambda-layer",
- "templateURL": "serverless-patterns/terraform-lambda-layer",
- "projectFolder": "terraform-lambda-layer",
- "templateFile": "terraform-lambda-layer/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- },
- {
- "text": "AWS Lambda Developer Guide - Creating and sharing Lambda layers",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html"
- },
- {
- "text": "AWS Database Blog - IAM role-based authentication to Amazon Aurora from serverless applications. This blog uses the mysql-connector-python package",
- "link": "https://aws.amazon.com/blogs/database/iam-role-based-authentication-to-amazon-aurora-from-serverless-applications/"
- },
- {
- "text": "AWS Amazon Relational Database Service (RDS) User Guide - Using SSL/TLS to encrypt a connection to a DB instance",
- "link": "https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
\ No newline at end of file
diff --git a/terraform-lambda-sfn/example-pattern.json b/terraform-lambda-sfn/example-pattern.json
deleted file mode 100644
index a3a982f47..000000000
--- a/terraform-lambda-sfn/example-pattern.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "title": "Invoke an AWS Step Functions workflow from AWS Lambda",
- "description": "The pattern creates a Lambda function, and a Step Functions workflow, a Log group and the IAM resources required to run the application.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "The pattern creates a Lambda function, and a Step Functions workflow, a Log group and the IAM resources required to run the application.",
- "A Lambda function uses the AWS SDK to asyncronously invoke the Step Function workflow, passing the event body. The Step Function workflow showcasing the different States."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-lambda-sfn",
- "templateURL": "serverless-patterns/terraform-lambda-sfn",
- "projectFolder": "terraform-lambda-sfn",
- "templateFile": "terraform-lambda-sfn/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS Step Functions module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-step-functions/"
- },
- {
- "test": "Terraform AWS Step Functions examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-step-functions//tree/master/examples"
- },
- {
- "text": "AWS Step Functions Developer Guide",
- "link": "https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-s3-lambda/example-pattern.json b/terraform-s3-lambda/example-pattern.json
deleted file mode 100644
index 89885be0a..000000000
--- a/terraform-s3-lambda/example-pattern.json
+++ /dev/null
@@ -1,86 +0,0 @@
-{
- "title": "Amazon S3 bucket notifications to AWS Lambda",
- "description": "This pattern creates an Amazon S3 bucket, AWS Lambda function and setup S3 bucket event notifications to trigger the Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon S3 bucket, AWS Lambda function and setup S3 bucket event notifications to trigger the Lambda function.",
- "In this example, notifications like `s3:ObjectCreated:*` with filter prefix (`data/`) and suffix (`.json`) are configured."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-s3-lambda",
- "templateURL": "serverless-patterns/terraform-s3-lambda",
- "projectFolder": "terraform-s3-lambda",
- "templateFile": "terraform-s3-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS S3 bucket module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket"
- },
- {
- "test": "Terraform AWS S3 bucket notification module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket/tree/master/modules/notification"
- },
- {
- "test": "Terraform AWS S3 bucket examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket/tree/master/examples"
- },
- {
- "test": "Terraform AWS S3 bucket notification examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket/tree/master/examples/notification"
- },
- {
- "text": "Amazon S3 Event Notifications",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/NotificationHowTo.html"
- },
- {
- "text": "Amazon S3 Developer Guide",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-s3-object-lambda/example-pattern.json b/terraform-s3-object-lambda/example-pattern.json
deleted file mode 100644
index f5b4f3124..000000000
--- a/terraform-s3-object-lambda/example-pattern.json
+++ /dev/null
@@ -1,82 +0,0 @@
-{
- "title": "Amazon S3 with S3 Object Lambda (return image thumbnails from S3)",
- "description": "This pattern creates an S3 bucket, an S3 Access Point, an S3 Object Lambda Access Point, and Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an S3 bucket, an S3 Access Point, an S3 Object Lambda Access Point, and Lambda function.",
- "This application uses S3 Object Lambda to return a thumbnail version of an image in S3."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-s3-object-lambda",
- "templateURL": "serverless-patterns/terraform-s3-object-lambda",
- "projectFolder": "terraform-s3-object-lambda",
- "templateFile": "terraform-s3-object-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS S3 bucket module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket"
- },
- {
- "test": "Terraform AWS S3 bucket examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-s3-bucket/tree/master/examples"
- },
- {
- "text": "Using Amazon S3 Object Lambda Access Points",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html"
- },
- {
- "text": "Introducing Amazon S3 Object Lambda – Use Your Code to Process Data as It Is Being Retrieved from S3",
- "link": "https://aws.amazon.com/blogs/aws/introducing-amazon-s3-object-lambda-use-your-code-to-process-data-as-it-is-being-retrieved-from-s3/"
- },
- {
- "text": "Amazon S3 Developer Guide",
- "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/terraform-sqs-lambda/example-pattern.json b/terraform-sqs-lambda/example-pattern.json
deleted file mode 100644
index 2211fb64a..000000000
--- a/terraform-sqs-lambda/example-pattern.json
+++ /dev/null
@@ -1,81 +0,0 @@
-{
- "title": "Amazon SQS Queue to AWS Lambda",
- "description": "This pattern creates an Amazon SQS Queue, AWS Lambda function and setup event sourcing from the Queue to the Lambda function.",
- "language": "Python",
- "level": "200",
- "framework": "Terraform (with modules)",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This pattern creates an Amazon SQS Queue, AWS Lambda function and setup event sourcing from the Queue to the Lambda function."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/terraform-sqs-lambda",
- "templateURL": "serverless-patterns/terraform-sqs-lambda",
- "projectFolder": "terraform-sqs-lambda",
- "templateFile": "terraform-sqs-lambda/main.tf"
- }
- },
- "resources": {
- "bullets": [
- {
- "test": "Terraform AWS Lambda module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda"
- },
- {
- "test": "Terraform AWS Lambda examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples"
- },
- {
- "test": "Terraform AWS Lambda event source mapping examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-lambda/tree/master/examples/event-source-mapping"
- },
- {
- "test": "Terraform AWS SQS module",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-sqs"
- },
- {
- "test": "Terraform AWS SQS examples",
- "link": "https://github.com/terraform-aws-modules/terraform-aws-sqs/tree/master/examples"
- },
- {
- "text": "Lambda event source mappings",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html"
- },
- {
- "text": "Amazon SQS Developer Guide",
- "link": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html"
- },
- {
- "test": "AWS Lambda Developer Guide",
- "link": "https://docs.aws.amazon.com/lambda/latest/dg/welcome.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "terraform init && terraform apply"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "terraform destroy"
- ]
- },
- "authors": [
- {
- "name": "Anton Babenko",
- "image": "https://avatars.githubusercontent.com/u/393243",
- "bio": "AWS Hero, Terraform influencer, maintainer of Terraform AWS Modules, creator of serverless.tf, weekly.tf, modules.tf, and some more.",
- "linkedin": "https://www.linkedin.com/in/antonbabenko",
- "twitter": "antonbabenko"
- }
- ]
-}
diff --git a/waf-apigw-rest/example-pattern.json b/waf-apigw-rest/example-pattern.json
deleted file mode 100644
index 31a84aa55..000000000
--- a/waf-apigw-rest/example-pattern.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "title": "AWS WAF attached to Amazon API Gateway REST API",
- "description": "Creates an Amazon API Gateway with a WebACL attached to control access. This WebACL limits the requests to certain countries.",
- "language": "Python",
- "level": "300",
- "framework": "SAM",
- "introBox": {
- "headline": "How it works",
- "text": [
- "This sample project demonstrates how to use AWS WAF to add extra security to an Amazon API Gateway REST API. In this example, only requests from the US will be accepted. All others will be rejected with a 403. To add another country add the country code to the 'CountryCode' array starting on line 32."
- ]
- },
- "gitHub": {
- "template": {
- "repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/waf-apigw-rest",
- "templateURL": "serverless-patterns/waf-apigw-rest",
- "projectFolder": "waf-apigw-rest",
- "templateFile": "waf-apigw-rest/template.yaml"
- }
- },
- "resources": {
- "bullets": [
- {
- "text": "AWS WAF",
- "link": "https://aws.amazon.com/waf/"
- },
- {
- "text": "Building rules",
- "link": "https://docs.aws.amazon.com/waf/latest/developerguide/waf-rules.html"
- }
- ]
- },
- "deploy": {
- "text": [
- "sam deploy"
- ]
- },
- "testing": {
- "text": [
- "See the GitHub repo for detailed testing instructions."
- ]
- },
- "cleanup": {
- "text": [
- "Delete the stack: sam delete
."
- ]
- },
- "authors": [
- {
- "name": "Eric Johnson",
- "image": "https://serverlessland.com/assets/images/resources/ericdj.jpg",
- "bio": "Eric Johnson is a Principal Developer Advocate for Serverless Applications at Amazon Web Services and is based in Northern Colorado. Eric is a fanatic about serverless and enjoys helping developers understand how serverless technologies introduces a major paradigm shift in how they approach building and running applications at massive scale with minimal administration overhead. Prior to this, Eric has worked as a developer, solutions architect and AWS Evangelist for an AWS partner company.",
- "linkedin": "singledigit",
- "twitter": "edjgeek"
- }
- ]
-}