Skip to content

Commit 87aa8bd

Browse files
Create s3-lambda-dynamodb-terraform.json
1 parent c2df57b commit 87aa8bd

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
{
2+
"title": "Amazon S3 to AWS Lambda to Amazon DynamoDB",
3+
"description": "Upload object data from S3 to DynamoDB via Lambda.",
4+
"language": "Python",
5+
"level": "200",
6+
"framework": "Terraform",
7+
"introBox": {
8+
"headline": "How it works",
9+
"text": [
10+
"This pattern in Terraform offers a complete solution to load data from JSON files stored on S3. The following resources are created:",
11+
"- S3 Bucket with event notification on object creates",
12+
"- DynamoDB Table with on-demand billing mode",
13+
"- Lambda function that runs python and takes environment variables of bucket name, and dynamodb table"
14+
]
15+
},
16+
"gitHub": {
17+
"template": {
18+
"repoURL": "https://github.com/aws-samples/serverless-patterns/tree/main/s3-lambda-dynamodb-terraform",
19+
"templateURL": "serverless-patterns/s3-lambda-dynamodb-terraform",
20+
"projectFolder": "s3-lambda-dynamodb-terraform",
21+
"templateFile": "main.tf"
22+
}
23+
},
24+
"resources": {
25+
"bullets": [
26+
{
27+
"text": "Amazon S3 Event Notifications",
28+
"link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/NotificationHowTo.html"
29+
}
30+
]
31+
},
32+
"deploy": {
33+
"text": [
34+
"terraform init",
35+
"terraform apply --auto-approve"
36+
]
37+
},
38+
"testing": {
39+
"text": [
40+
"See the GitHub repo for detailed testing instructions."
41+
]
42+
},
43+
"cleanup": {
44+
"text": [
45+
"Delete the stack: <code>terraform destroy --auto-approve</code>."
46+
]
47+
},
48+
"authors": [
49+
{
50+
"name": "Sarika Subramaniam",
51+
"image": "link-to-your-photo.jpg",
52+
"bio": "Sarika is a Solutions Architect at Amazon Web Services based in London.",
53+
"linkedin": "sarika-subramaniam-9ba591118/"
54+
}
55+
],
56+
"patternArch": {
57+
"icon1": {
58+
"x": 20,
59+
"y": 50,
60+
"service": "s3",
61+
"label": "Amazon S3"
62+
},
63+
"icon2": {
64+
"x": 50,
65+
"y": 50,
66+
"service": "lambda",
67+
"label": "AWS Lambda"
68+
},
69+
"icon3": {
70+
"x": 80,
71+
"y": 50,
72+
"service": "dynamodb",
73+
"label": "Amazon DynamoDB"
74+
},
75+
"line1": {
76+
"from": "icon1",
77+
"to": "icon2"
78+
},
79+
"line2": {
80+
"from": "icon2",
81+
"to": "icon3"
82+
}
83+
}
84+
}

0 commit comments

Comments
 (0)