nasa9084 / aws-rapid-prototyping-with-python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AWS Rapid Prototyping with Python CircleCI

This is a project to experience application development on AWS with the actual minimal implementations!
It contains:

  • Basic 3-tiers serverlss WEB application which depends on:
    • Amazon API Gateway
    • AWS Lambda
    • Amazon DynamoDB
  • Unit tests

Try it out on your local machine

Prerequisite

Create virtual environment and install dependencies

This project depends on Poetry to manage the environment and dependencies.
So first of all, install it using pip command.

$ pip install poetry

And then, create its virtual environment and install dependencies.

$ poetry shell
$ poetry install

Run locally

You can launch the application on your local machine with the following script, it performs:

  • Pull the docker image of DynamoDB Local from dockerhub
  • Create a docker network common between DynamoDB Local and SAM Local if not exists
  • Lanuch DynamoDB Local
  • Create DynamoDB schema into DynamoDB Local
  • Launch application through SAM Local
$ bash scripts/samlocal.sh

Run unit test

You can run unit test with the following script, it performs:

  • Lanuch DynamoDB Local
    • Different container from SAM Local's one
  • Run py.test
bash scripts/unittest.sh

License

This library is licensed under the MIT-0 License. See the LICENSE file.

About

License:MIT No Attribution


Languages

Language:Python 59.7%Language:Shell 26.6%Language:TypeScript 11.1%Language:JavaScript 2.6%