I am evaluating serverless v AWS SAM CLI. I am trying to understand how can i facilitate a local dev workflow when developing using the following:-
I can see from the doc that serverless has local options for:-
Not obvious if there is a solution for:-
I can see from the SAM doc that its possible to test python Lambdas against local DynamoDB. Not clear what else is possible or if you have to point it to a an actual AWS instance for the rest (S3, SQS etc)
Any pointers?
I would look into leveraging something like https://github.com/localstack/localstack to achive SQS and SNS.
For APIGW endpoint this is built into sam-cli in your SAM template using the Events param on your function resource or using API resources. See API section in following link https://docs.aws.amazon.com/lambda/latest/dg/serverless_app.html
Although it does not have complete functionality yet so it might not have everything you need like request body validation for example. I usually find I can do most of my app testing locally with this before deploying and doing more integration testing in real env.