Миграции - Перенос инфоблоков с локальной копии на боевой сайт

Автор статьи: Павел Баранов

Модуль миграций предназначен для переноса или сохранения системных модулей 1с-Битрикс.

Мы используем его преимущественно для переноса созданных или измененных на локальных копиях системных модулей на продакшн.

С помощью данного модуля мы можем переносить инфоблоки, свойства инфоблоков, элементы, разделы(категории), веб формы и результаты их заполнения, highload-блоки и их элементы, агенты и т.д. (полный список можно посмотреть в самом модуле).

Миграция инфоблоков:

Для создания полной миграции инфоблоков нам требуется установленный модуль «Миграции для разработчиков».

1. Переходим в модуль

Находясь в админке сайта переходим в Настройки -> Миграции для разработчиков -> Миграции(cfg)

2. Создание миграции инфоблока

  1. Выбрать «Создать миграцию для инфоблоков»

  2. Выбрать инфоблок

    • У инфоблока обязательно должен быть символьный код

  3. Заполнить название и описание миграции

  4. Выбрать элементы конфигурации инфоблока, требуемые для переноса.

  5. Выбрать свойства инфоблока, которые хотим переносить

    • На версии модуля 3.16.3 перенос инфоблока без свойства(empty) не представляется возможным. Оно как минимум должно быть создано, но может быть не выбрано.

  6. Нажать далее и получить соответствующее уведомление об успешности создания миграции

3. Миграция категорий (разделов) инфоблока

  1. Выбрать «Перенести категории инфоблоков»

  2. Заполнить название и описание

  3. Выбрать инфоблок, выбранный на втором шаге.

  4. Нажать далее и получить соответствующее уведомление об успешности создания миграции

4. Миграция элементов инфоблока

  1. Выбрать «Перенести элементы инфоблоков»

  2. Заполнить название и описание миграции

  3. Выбрать соответствующий инфоблок

  4. Нажать далее и получить соответствующее уведомление об успешности создания миграции

На версии модуля 3.16.3 значения свойств переносятся не всегда, так что после того, как миграция будет перенесена на боевой сайт и там применена нужно проверить свойства элементов на правильность их заполнения.

5. Сохранение миграций в GIT

Все миграции помещаются модулем внутри сайта по пути /local/php_interface/migrations/. Их перенос на боевой сайт осуществляется в рамках стандартных процедур по передаче кода с локальной копии на боевой сайт (т.е. через gitlab).

После создания всех необходимых миграций их необходимо добавить в систему контроля версий GIT

6. Установка миграций на боевом сайте

Находясь в админке боевого сайта, после того как merge request с соответствующими миграциями будет слит на сам боевой сайт, требуется снова перейти в модуль миграции и установить их.

Установка для инфоблоков должна проходить в следующем порядке:

  1. Установка миграции самого инфоблока;

  2. Установка миграции категорий инфоблока (если есть)

  3. Установка миграции элементов инфоблока (если есть).

Остальные системные модули мигрируют похожим образом, с той лишь разницей, что, зачастую, их миграции являются не составными, а единичными/цельными.

Last updated