Проект включает несколько API enpoints для работы с пользователями, их инвентарём и продуктами.
Для запуска ПО вам понадобятся консольный Git, Make, Docker и Docker Compose. Инструкции по их установке ищите на официальных сайтах:
Для тех, кто использует Windows необходимы также программы git и git bash. В git bash надо добавить ещё команду make:
- Go to ezwinports
- Download make-4.2.1-without-guile-w32-bin.zip (get the version without guile)
- Extract zip
- Copy the contents to C:\ProgramFiles\Git\mingw64\ merging the folders, but do NOT overwrite/replace any exisiting files.
Все дальнейшие команды запускать из-под git bash.
Для локального развертывания приложения необходимо создать в корне проекта файл .env. Сейчас можете оставитье его пустым:
$ touch .envСклонируйте репозиторий.
Сначала скачайте и соберите докер-образы с помощью Docker Сompose:
$ docker compose pull --ignore-buildable
$ docker compose buildЗапустите докер-контейнеры и не выключайте:
$ docker compose upПримените миграции
$ make migrateAPI доступно по адресу 127.0.0.1:8000/api/v1/redoc.
Для часто используемых команд Docker Compose подготовлен набор альтернативных коротких команд make.
Полный набор доступных команд make и их скриптов можно найти в файле Makefile. Тот же список доступных команд можно вывести в консоль через встроенную справку:
$ make help
Cписок доступных команд:
lint Проверяет линтерами код в репозитории
format Запуск автоформатера
makemigrations Создаёт новые файлы миграций Alembic
migrate Применяет новые миграции Alembic
test Запуск тестовВ проекте используются автотесты pytest. Можно запустить их командой:
make test