Containers

Setup the project

  • Clone repo:

    git clone https://github.com/denseidel/consumer-marketplace-service.git
    cd consumer-marketplace-service
    git secrets --install
    git secrets --register-aws
  • Start a virtual environment

    virtualenv venv --python=python3
    source venv/bin/activate
    # install pylint 
    pip install pylint

    If you use visual studio code do this first in your terminal window and then open the folder again with code ..

Developer a docker microservice in Python

  1. Check that you have have a local docker environment in Plattform -> Setup Docker Environment.

  2. Create Dockerfile and docker-compose that starts the Mock Server(Code) - make sure the Swagger file does not include custom functions like x-tokenInfoFunc. TODO create it for the mock

  3. Implement Frontend against mocks

  4. Update Dockerfile to production config

  5. Implement API (including DB, ...)

Connexion Examples:

Create a client library for the API:

Use Feature flags:

Python Testing:

  • Unit Testing

  • Mocks

  • Code Coverage

Python Functional Programming:

Python Clean Code:

Benefits API First:

https://github.com/swagger-api/swagger-codegen/wiki/server-stub-generator-howto#python-flask-connexion

http://connexion.readthedocs.io/en/latest/cli.html

https://blog.runscope.com/posts/openapi-swagger-resource-list-for-api-developers

https://medium.com/ibm-data-science-experience/deploy-your-python-functions-as-a-rest-api-811981ec7ec5

https://github.com/zalando/connexion

http://michal.karzynski.pl/blog/2016/06/19/building-beautiful-restful-apis-using-flask-swagger-ui-flask-restplus/

https://cidrblock.github.io/zero-to-api-in-4-minutes.html

Beispiel: https://github.com/hjacobs/connexion-example

Develop API First in Python

Get started with Connextion: http://connexion.readthedocs.io/en/latest/quickstart.html

https://github.com/zalando/connexion

https://github.com/hjacobs/connexion-example

https://cidrblock.github.io/zero-to-api-in-4-minutes.html

https://github.com/ssola/python-flask-microservice/blob/master/api/room.py

https://medium.com/@ssola/building-microservices-with-python-part-i-5240a8dcc2fb

http://coderobot.downley.net/swagger-driven-testing-in-python.html

https://uwsgi-docs.readthedocs.io/en/latest/

http://connexion.readthedocs.io/en/latest/routing.html

API Sources / public api collection: https://any-api.com

https://www.programmableweb.com/apis/directory

https://apis.guru/browse-apis/

Last updated