Сделать инструмент миграции

Рейтинг: 7.2896  
Отложено
Предложил Пользователь 32771 13.03.2012 14:35:18

Сделать инструмент миграции

Собственно необходим инструмент миграции между версиями работающего сайтаНужен класс миграции с методами update и down
в которых разработчик будет описывать изменения с базой

По типу как это реализовано в Доктрине например.

Рейтинг: 0  
Пользователь 32771 17.04.2012 13:22:41
UP
Рейтинг: 0  
Пользователь 109703 17.04.2012 14:47:58
Миграции по сути не очнеь нужны, так как использовать их можно будет только для разработки собственных модулей. И вообще они исопльзуются в системах, где вы являетесь полноценным проектировщиком базы данных, создаете сами все модели.

И, как сами понимаете, Битрикс арзработчикам эта технология не близка и вряд лиона будет реализована - слишком трудозатратно.
Рейтинг: 0  
Пользователь 32771 17.04.2012 15:20:48
Миграции по сути не очнеь нужны, так как использовать их можно будет только для разработки собственных модулей. И вообще они исопльзуются в системах, где вы являетесь полноценным проектировщиком базы данных, создаете сами все модели. И, как сами понимаете, Битрикс арзработчикам эта технология не близка и вряд лиона будет реализована - слишком трудозатратно.
Почему, предположим есть сайт. Работающий интернет магазин с количеством товаров 10к++. Ну не суть сколько. Магазин работает несколько месяцев, счастливые пользователи что то там покупают.
Тут владелец решает внезапно расширить функционал и добавить к товарам свойства. Что делает нормальный разработчик. У него же все под контролем версий =)

Он достает проект из системы контроля версий и дописывает функционал. А в админке добавляет свойства для инфоблока.

Потом если разработчик вообще мега крут он пишет пару простых тестов, все тестирует, убеждается что все хорошо. Заливает новую фичу в репозиторий и теперь хочет обновить код на продакшен сервере. Вытаскивает к примеру из репозитория только те скрипты что изменились и заливает на сервер. Но ему еще ведь нужно добавить свойства в инфоблок. И он идет в админку и руками прописывает свойства. Ладно если там одно свойство. А если разработчик добавил 10 фич, и в 10 инфболоках добавил по 10 свойств. Добавлять их руками полный бред.

А теперь усложните задачу и добавте к разработке команду из 3-5 человек которые пишут код, работают с базой, использует контроль версий и делают они это не в одном месте а каждый у себя и потом они должны это все объеденить и выложить на тестовый и потом на продакшен сервера.

Тут уж извините руками это все делать? Для этого и нужны миграции чтобы все это делали скпипты вместо человека делали и исключали человеческий фактор.
Рейтинг: 0  
Пользователь 32771 20.04.2012 12:20:28
UP
Рейтинг: 0.4053  
Пользователь 60333 20.04.2012 16:10:49
Люто-бешено плюсую. Решил заказчик добавить на работающий сайт интернет-магазин. Разработчик у себя настраивает службы доставки, системы отлаты, типы цен, местоположения, типы покупателей и т. д. А потом всё это руками делает на продакшене?
Рейтинг: 0  
Пользователь 29794 28.06.2018 11:23:01
Жаль, что идея не пошла в жизнь. Если бы в Битрикс добавили бы возможность генерации скриптов миграции - это был бы незаменимый модуль.

На текущий момент единственный вариант поддержки больших долгоживущих проектов - написание скриптов миграции руками, что сильно повышает уровень вхождения на проект для программистов.

На маркетплейс есть решение для управления скриптами миграции, но вся автоматизация по их написанию пока - использование собственных наработок и шаблонов.

Модуль по управлению: http://marketplace.1c-bitrix.ru/solutions/sprint.migration/