Миграции - Перенос инфоблоков с локальной копии на боевой сайт
Автор статьи: Павел Баранов
Модуль миграций предназначен для переноса или сохранения системных модулей 1с-Битрикс.
Мы используем его преимущественно для переноса созданных или измененных на локальных копиях системных модулей на продакшн.
С помощью данного модуля мы можем переносить инфоблоки, свойства инфоблоков, элементы, разделы(категории), веб формы и результаты их заполнения, highload-блоки и их элементы, агенты и т.д. (полный список можно посмотреть в самом модуле).
Миграция инфоблоков:
Для создания полной миграции инфоблоков нам требуется установленный модуль «Миграции для разработчиков».
1. Переходим в модуль
Находясь в админке сайта переходим в Настройки -> Миграции для разработчиков -> Миграции(cfg)
2. Создание миграции инфоблока
Выбрать «Создать миграцию для инфоблоков»
Выбрать инфоблок
У инфоблока обязательно должен быть символьный код
Заполнить название и описание миграции
Выбрать элементы конфигурации инфоблока, требуемые для переноса.
Выбрать свойства инфоблока, которые хотим переносить
На версии модуля 3.16.3 перенос инфоблока без свойства(empty) не представляется возможным. Оно как минимум должно быть создано, но может быть не выбрано.
Нажать далее и получить соответствующее уведомление об успешности создания миграции
3. Миграция категорий (разделов) инфоблока
Выбрать «Перенести категории инфоблоков»
Заполнить название и описание
Выбрать инфоблок, выбранный на втором шаге.
Нажать далее и получить соответствующее уведомление об успешности создания миграции
4. Миграция элементов инфоблока
Выбрать «Перенести элементы инфоблоков»
Заполнить название и описание миграции
Выбрать соответствующий инфоблок
Нажать далее и получить соответствующее уведомление об успешности создания миграции
На версии модуля 3.16.3 значения свойств переносятся не всегда, так что после того, как миграция будет перенесена на боевой сайт и там применена нужно проверить свойства элементов на правильность их заполнения.
5. Сохранение миграций в GIT
Все миграции помещаются модулем внутри сайта по пути /local/php_interface/migrations/
. Их перенос на боевой сайт осуществляется в рамках стандартных процедур по передаче кода с локальной копии на боевой сайт (т.е. через gitlab).
После создания всех необходимых миграций их необходимо добавить в систему контроля версий GIT
6. Установка миграций на боевом сайте
Находясь в админке боевого сайта, после того как merge request с соответствующими миграциями будет слит на сам боевой сайт, требуется снова перейти в модуль миграции и установить их.
Установка для инфоблоков должна проходить в следующем порядке:
Установка миграции самого инфоблока;
Установка миграции категорий инфоблока (если есть)
Установка миграции элементов инфоблока (если есть).
Остальные системные модули мигрируют похожим образом, с той лишь разницей, что, зачастую, их миграции являются не составными, а единичными/цельными.
Last updated