Serverless Python Sample

serverless

A simple serverless python sample. The service is running on AWS Lambda using Serverless Framework.

The service has a dependency on external package (requests) and it exposes 2 REST API endpoints:

EndpointDescription
GET /postsRetrieves a list of posts
GET /posts/{id}Retrieves a specific post (e.g. GET /posts/5)

Usage

Setup

StepCommandDescription
1.npm install -g serverlessInstall Serverless CLI
2.npm installInstall Serverless dependencies
3.Set up an AWS account with admin permissionsDocumentation

Development

StepCommandDescription
1.mkvirtualenv postsCreate virtual environment (using virtualenvwrapper)
2.pip install -r requirements.txtInstall dependencies

Deployment

sls deploy

Invocation

curl <host>/posts
curl <host>/posts/5

Tips & Tricks

help command

Just use it on anything:

sls help

or

sls <command> --help

deploy function command

Deploy only one function:

sls deploy function -f <function-name>

logs command

Tail the logs of a function:

sls logs -f <function-name> -t

info command

Information about the service (stage, region, endpoints, functions):

sls info

invoke command

Run a specific function with a provided input and get the logs

sls invoke -f <function-name> -p event.json -l

Credits

JSONPlaceholder by @typicode is used for the posts backend.