[hw-4] add postgres db

This commit is contained in:
Никита Шубин
2025-06-26 12:08:46 +00:00
parent 3ebaad5558
commit 77ed9fcf85
46 changed files with 1582 additions and 369 deletions

33
docs/homework-4/README.md Normal file
View File

@@ -0,0 +1,33 @@
# Домашнее задание по модулю "Базы данных"
Необходимо развернуть БД PostgreSQL для сервиса loms. Реализовать слой `Repository`, в котором будут походы в БД
## Основное задание
1. Для сервиса loms реализовать в слое `Repository` поход в БД
2. Развернуть экземпляр БД PostgreSQL в отдельном контейнере
3. Корректно использовать транзакции в операции создания заказа
4. Реализовать автоматические миграции, накатывающие схему БД и/или тестовые данные
5. SQL-код должен быть написан в виде raw. Без использования ORM или билдеров (можно sqlc)
## Дополнительное задание
1. Для БД поднять синхронную реплику. Балансировать read/write запросы между ними (write только в master, read в любую из реплик)
2. Написать по одному интеграционному тесту на каждый SQL-запрос в репозитории сервиса loms. Не забыть накатывать тестовые данные в миграции, после прогона тестов - удалить данные из БД
3. Реализовать SQL-запросы с помощью sqlc
## Автоматические проверки
Ваше решение должно проходить автоматические проверки:
- Компиляция
- Линтер
- Unit-тесты
- Code coverage >40%
- Автотесты
Прохождение автоматических проверок влияет на итоговую оценку за домашнюю работу.
### Дедлайны сдачи и проверки задания:
- 21 июня 23:59 (сдача) / 24 июня, 23:59 (проверка)