8000 GitHub - megapegabot/test_tochka: Тест задание для точки
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

megapegabot/test_tochka

Repository files navigation

Информация

Приложение отслеживания и изменения баланса пользователей

Стек

  • python 3.7+
  • asyncio
  • swagger-ui-bundle + connexion - сериализация + валидация
  • asyncpg - драйвер для postgres
  • async task - для выполнения фоновых задач

API

  • GET api/ping - получение состояния сервиса
  • POST api/status/ {"uuid": "<uuid-v4>"} - получение информации о абоненте
  • PUT api/substract {"id": "<uuid-v4>", "subtract": "33.48"} - уменишение баланса пользователя
  • PUT api/add {"uuid": "<uuid-v4>", "added": "33"} - пополнение баланса пользователя

Структура кода

  • user_service - код приложения
    • api - методы, хендлеры, api
    • configs - настроки приложения, логирования и т/д
    • db - описание классов и методов работы с БД
    • spec - описание методов api сериализация + валидация
    • __init__.py - настройка приложения
    • __main__ - Точка входа
    • configs.py - парс переменных окружений
    • docker-entrypoint.sh - при запуске/билде контейнера выполнится этот сткрипт
    • Dockerfile -
    • requirements.txt - зависимости
    • task.py - фоновые задачи
  • db-entrypoint.sh - при запуске/билде контейнера выполнится этот сткрипт
  • docker-compose.dev.yml - докер компосе для разработки
  • docker-compose.dev - докер компосе общий
  • file.sql - бекап базы данных
  • nginx.conf - описание/настройка nginx
  • Задание .pdf - само задание

Запуск

из папки проекта:

docker-compose up -d && \
sh db-entrypoint.sh

About

Тест задание для точки

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0