Learning the basics of CloudFormation, Lambda, API Gateway, Bash and Docker
- Created a CloudFormation Template File which creates an AWS stack consisting of a Lambda Function, DynamoDB Table, and S3 bucket
- Two template files have been created, one in which the lambda was written in JS (
cbf
), and a second which was written in Python (cbf-python
)
- Basic lambda created both in JS and python which adds an id to a DynamoDb and adds a specified number to the id's "SeenCount"
- Also added a
run-local
JS script which allows a lambda to be run locally instead of redeploying and invoking the CloudFormation stack
deploy-and-invoke
- Basic script created which deploys a stack and invokes the stack function. This is useful when a change has been made to the stack template, and then subsequently checking that the Lambda function is working as expected. -This script can be invoked using./deploy-and-invoke.sh <stack-name> <template-file-name> '<payload>'
deploy-and-curl
- Basic script created which deploys a stack and invokes the lambda via the API gateway. -This script can be invoked using./deploy-and-curl.sh <stack-name> <template-file-name> <method> '<payload>'
run-in-docker
- Basic script created which runs the step-lambda within a Docker Container (so you don't have to re-deploy the CloudFormation stack each time you make a modification to the lambda)./run-in-docker.sh <method>
run-in-docker-compose
- Basic script created which runs triggers the step-lambda contained within a localstack container, alongside a test-table (to avoid polluting the real AWS table)./run-in-docker-compose.sh <method>
Coming Soon
Coming Soon