DB migrations - поддержка для branch-based разработки
От: Mr.Delphist  
Дата: 20.06.22 17:09
Оценка:
Подумалось тут про сферического коня в базовом вакууме.

Вот допустим, у нас есть проект, где мы ведём разработку в бранчах: отделились от некоторого условного DEV, далее разработчик педалит изменения, затем это проходит цикл QA-активностей, затем либо слияние с DEV, либо откладываем в сторону на N времени (бизнес передумал/думает, разработчика потащили на более приоритетную задачу и т.п. — не суть)

И если с исходниками вопросов нет, то вот по управлению миграциями базы есть вопросы. Допустим, есть два параллельных бранча, в них разработчики делают конфликтующие изменения (например, первый бранч предполагает добавление колонки в таблице, а второй или делает сущность коллекцией сущностей, или вообще удаляет её).

Преположение: представим, что размер БД весьма крупный (и нужный для acceptance), и обычной локальной девелоперской пустышкой тут не отделаться (как минимум на QA-стадии)

Вопрос: как лучше управлять деплоями этих бранчей на QA-среду, если у тестера может быть разный порядок тестирования этих бранчей? Каждый раз начинать из некоторого эталонного бэкапа, на который затем уже накатываются разрушающие миграции? Или есть идеи поинтереснее?

Стек Java/MySQL, хотя вряд ли это столь существенно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.