User Service - простая ботоферма, которая отдает реальные учетные данные пользователя по требованию для использования в E2E-тестах.
Стек приложения:
- Python
- FastAPI
- Pydantic
- SQLAlchemy & alembic
- Dishka (DI framework)
- PostgreSQL
Чтобы начать работу, клонируйте данный репозиторий и перейдите в корневую директорию приложения.
Используется пакетный менеджер Poetry. Чтобы установить зависимости, выполните следующую команду:
poetry install
Активируйте виртуальное окружение:
poetry shell
Примените последнюю версию базы данных. Для локальной разработки будет создана dev.db
база данных, использующая SQLite:
alembic upgrade head
Запустите приложение:
uvicorn src.user_service.main:create_production_app
Вы можете начать пользоваться приложением через интерактивную документацию.
Для запуска приложения в production-ready окружении создайте .env
файл по образцу .env.example. Выполните команду:
docker compose up --build -d
Вы можете начать пользоваться приложением через интерактивную документацию.
Предполагается, что вы выполнили все шаги из раздела Локальный запуск.
Приложение покрыто тестами. Для запуска тестов используйте команду:
pytest -l
При необходимости создайте coverage-репорт в удобном формате:
pytest --cov=src/user_service --cov-report html