- Spring Modulith
url: jdbc:postgresql://localhost:5432/jira
username: jira
password: JiraRush
- Есть 2 общие таблицы, на которых не fk
- Reference - справочник. Связь делаем по code (по id нельзя, тк id привязано к окружению-конкретной базе)
- UserBelong - привязка юзеров с типом (owner, lead, ...) к объекту (таска, проект, спринт, ...). FK вручную будем проверять
- Разобраться со структурой проекта (onboarding)
- Каждый модуль является изолированной частью приложения для уменьшения зависимостей между ними
- Удалить социальные сети: vk, yandex
- Удалены handler-ы, настройки
- Добавлена дополнительная миграция на удаление
- Вынести чувствительную информацию (логин, пароль БД, идентификаторы для OAuth регистрации/авторизации, настройки почты) в отдельный проперти файл. Значения этих проперти должны считываться при старте сервера из переменных окружения машины
- Чувствительная информация вынесена в secrets.yml и сделан import в основной файл. Для запуска приложения необходимо указать переменные окружения
- Переделать тесты так, чтоб во время тестов использовалась in memory БД (H2), а не PostgreSQL. Для этого нужно определить 2 бина, и выборка какой из них использовать должно определяться активным профилем Spring
- Тесты переведены на testcontainers
- Создана аннотация для упрощения создания новых тестов
- Написать тесты для всех публичных методов контроллера ProfileRestController
- метод get (запросы с неавторизованным пользователем, а также с авторизованным)
- метод update (не валидный запрос, запрос с неавторизованным пользователем, а также с авторизованным)
- Добавить новый функционал: добавления тегов к задаче. Фронт делать необязательно
- Добавлен TaskUIController, который принимает POST запрос на добавление тегов к задаче. Далее отрабатывает TaskService, делает запрос в базу для поиска задачи и после нахождения добавляет новые теги в таблицу task_tag
- Добавлен тест на добавление тегов к задаче
- Добавить возможность подписываться на задачи, которые не назначены на текущего пользователя. (Рассылку уведомлений/письма о смене статуса задачи делать не нужно)
- В TaskUIController добавлен метод, который принимает POST запрос на добавление связи задачи к пользователю. Далее отрабатывает TaskService и добавляет связь в таблицу user_belong
- Добавлен тест на наличие подписи к задаче
- Добавить автоматический подсчет времени (сколько времени задача находилась в работе, тестировании и т. д.). Для этого нужно искать записи в таблице activity по задаче.
- Добавлен Reference для статуса задачи in test
- Добавлена страница Summary для отображения времени, которое задача находилась в работе, тестировании
- В TaskUIController добавлен метод, который принимает GET запрос на получение времени задачи. Далее отрабатывает TaskService и возвращает время в формате ключ-значение, где ключ это стадия, а значение время в формате строки
- Добавлен тест на получение времени задачи
- Написать Dockerfile для основного сервера
- Написан Dockerfile на основе Maven образа. Для запуска приложения необходимо указать переменные окружения
- Написать docker-compose файл для запуска контейнера сервера вместе с БД и nginx. Для nginx используй конфиг-файл config/nginx.conf. При необходимости файл конфига можно редактировать
- Создан docker-compose.yml, который запускает контейнеры с сервером, БД и nginx.
Для запуска приложения необходимо использовать команду:
docker-compose up -d
Приложение станет доступно по адресу: http://localhost:80
Для авторизации можно использовать следующие данные:
Name | Value |
---|---|
Login | [email protected] |
Password | admin |
- Добавить локализацию минимум на двух языках для шаблонов писем и стартовой страницы index.html
- Добавлена поддержка локализации на английском и русском языке на всех страницах. За исключением данных заполняемых с помощью JS
- Добавлены кнопки на странице для удобной смены языка
- Реализовать бэклог (backlog) – полный список задач (с пейджингом), которые должны быть выполнены и еще не относятся ни к какому спринту. (бек + фронт)
- В TaskUIController добавлен метод, который принимает GET запрос на получение всех задач не относящихся ни к какому спринту
- Добавлена страница Backlog для отображения данных задач