Skip to content

stanislav-web/PyRuc

Repository files navigation

PyRuc (Python Redis Users Controller)

PyRuc is the service for maintaining new and existing users accounts

Coverage Status Codacy Badge GitHub license Release Status

Python Status
3.5 Build Status
3.6 Build Status
What do you get out of the box?
  • User's account maintenance in mode of persistent storage use
  • Granting access to your internal services
  • Rapid recovery access in case of loss of control
Requirements
  • Python >= 3.5
  • Redis >= 4
Implemented
  • Gunicorn WSGI
  • Gevent as default async worker for Gunicorn
  • Python flask
  • Twilio SMS notifier
  • Logstash client as logs filter to Elastic
  • JWT authentication
  • Redis as persistent user's storage
Configuration
/app/env/development.env
/app/env/production.env
Installation
  • Docker
# ENV development: using /app/env/development.env
> docker-compose --file docker-compose.dev.yml up --build

# ENV production: using /app/env/production.env
> docker-compose --file docker-compose.prod.yml up --build
  • Manualy & Run
> cd app
> pip install -r requirements.txt
> gunicorn -c config.py server --reload
Try API

http://drunk-start.surge.sh

Diagrams

Registration Authentication Restore

Tests

> cd app && coverage run setup.py test