Links

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

Автор статьи: Павел Баранов
Модуль миграций предназначен для переноса или сохранения системных модулей 1с-Битрикс.
Мы используем его преимущественно для переноса созданных или измененных на локальных копиях системных модулей на продакшн.
С помощью данного модуля мы можем переносить инфоблоки, свойства инфоблоков, элементы, разделы(категории), веб формы и результаты их заполнения, highload-блоки и их элементы, агенты и т.д. (полный список можно посмотреть в самом модуле).

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

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

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

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

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

  1. 1.
    Выбрать «Создать миграцию для инфоблоков»
  2. 2.
    Выбрать инфоблок
    • У инфоблока обязательно должен быть символьный код
  3. 3.
    Заполнить название и описание миграции
  4. 4.
    Выбрать элементы конфигурации инфоблока, требуемые для переноса.
  5. 5.
    Выбрать свойства инфоблока, которые хотим переносить
    • На версии модуля 3.16.3 перенос инфоблока без свойства(empty) не представляется возможным. Оно как минимум должно быть создано, но может быть не выбрано.
  6. 6.
    Нажать далее и получить соответствующее уведомление об успешности создания миграции

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

  1. 1.
    Выбрать «Перенести категории инфоблоков»
  2. 2.
    Заполнить название и описание
  3. 3.
    Выбрать инфоблок, выбранный на втором шаге.
  4. 4.
    Нажать далее и получить соответствующее уведомление об успешности создания миграции

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

  1. 1.
    Выбрать «Перенести элементы инфоблоков»
  2. 2.
    Заполнить название и описание миграции
  3. 3.
    Выбрать соответствующий инфоблок
  4. 4.
    Нажать далее и получить соответствующее уведомление об успешности создания миграции
На версии модуля 3.16.3 значения свойств переносятся не всегда, так что после того, как миграция будет перенесена на боевой сайт и там применена нужно проверить свойства элементов на правильность их заполнения.

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

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

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

Находясь в админке боевого сайта, после того как merge request с соответствующими миграциями будет слит на сам боевой сайт, требуется снова перейти в модуль миграции и установить их.
Установка для инфоблоков должна проходить в следующем порядке:
  1. 1.
    Установка миграции самого инфоблока;
  2. 2.
    Установка миграции категорий инфоблока (если есть)
  3. 3.
    Установка миграции элементов инфоблока (если есть).
Остальные системные модули мигрируют похожим образом, с той лишь разницей, что, зачастую, их миграции являются не составными, а единичными/цельными.