Приложение упаковано в Docker-контейнер и разворачивается с помощью docker-compose
Внутри Docker-контейнера доступны две команды:
app-db
- утилита для создания таблиц в БДapp
- утилита для запуска приложения
- Создать в папке
deploy
скрытый файл.env.prod
- Заполнить данные на примере файла
.env.test
(POSTGRES_HOSTS должен быть равен названию БД контейнера) - Выполнить команду
make run
в терминале в корневой директории проекта - Для остановки контейнеров используйте
make stop
, для удаленияmake down
.
Создание и активация виртуального окружения
python3.8 -m venv venv
source venv/bin/activate
Активация переменных окружения (заранее нужно изменить данные в deploy/.env.test)
export $(grep -v '^#' deploy/.env.test | xargs)
Установка приложения через pip
, создание таблиц в БД и запуск приложения
pip install -e .
app-db upgrade head
app
Проверка работоспособности
curl localhost:8080/ping/app
curl localhost:8080/ping/db
make run
Запуск контейнеровmake build
Пересборка контейнеров при изменениях в кодеmake stop
Остановка контейнеровmake down
Остановка и удаление контейнеровmake lint
Запуск линтера flake8make cs
Запуск black для форматирования кодаmake test
Запуск тестовmake test-cov
Запуск тестов с покрытием кодаmake test-cov-html
Запуск тестов с отчетом в htmlmake req
Обновление зависимостей
localhost:8080/docs
localhost:8080/redoc