Рекомендации по экспорту и импорту приложений
-
Так как приложение представляет собой совокупность всех пакетов, чтобы перенести его на другой экземпляр, необходимо собрать их все.
-
Не вносите никаких изменений в существующие функции во время миграции. Чтобы внедрить какие-либо важные улучшения, следуйте одному из подходов:
- Пройдите все этапы цикла разработки, включая тестирование.
- Внедрите эти улучшения после завершения миграции.
-
Миграция конфигураций выполняется посредством конфигурационных пакетов. Для упрощения объедините несколько пакетов в один перед экспортом. Чтобы обеспечить импорт только актуальных версий, создайте моментальные снимки каждого импортированного приложения, следуя приведенным ниже инструкциям:
-
Создайте локальный пакет для переноса приложения. Например, локальный пакет для моментального снимка таблиц приложения Simple может называться [SA] — Snapshot diff.
-
Сделайте этот локальный пакет текущим.
-
Перейдите в Настройка системы → Серверные скрипты и запустите представленный ниже скрипт, чтобы создать моментальные снимки всех таблиц с версиями:
Снимок таблицы
const table = new SimpleRecord('sys_db_table');
table.addQuery('is_vcs_enabled', true);
table.addQuery('sys_id', '!=', '999999999999999998'); // exclude REM
table.selectAttributes('name');
table.query();
while (table.next()) {
const vcs = new SimpleVcs();
const versionCount = vcs.createTableSnapshot(table.name);
if (versionCount > 0) {
ss.info(`${table.name.padStart(80, " ")}: ${versionCount} versions created`);
}
}вниманиеПеред переносом приложения проведите анализ на предмет зависимостей от других приложений.
Например, в уже имеющемся приложении на экземпляре могут отсутствовать роли, используемые в правилах контроля доступа ACLперенесенных приложений. В этом случае ограничения доступа не будут работать должным образом.
-
-
Также импортируйте связанные записи следующих таблиц:
Системное название таблицы Заголовок таблицы Описание sys_search_index Поисковый индекс Хранит поисковые индексы.
Записи в таблице Поисковый индекс (sys_search_index) доступны только для чтения и только пользователям с ролью admin.
sys_activity_feed_item Объекты ленты активности Хранит записи изменений полей в Ленте активности.
Вы не можете создавать, редактировать и удалять записи в таблице Объекты ленты активности (sys_activity_feed_item).
Записи в таблице Объекты ленты активности (sys_activity_feed_item) доступны только для чтения и только пользователям с ролью admin.
sys_history История Хранит записи изменений Истории.
Записи в таблице История (sys_history) доступны только для чтения и только пользователям с ролью admin.
sys_activities_stream_field Активности Хранит изменения полей записей, записанных виджетом Активности.
Записи в таблице Активности (sys_activities_stream_field) доступны только для чтения и только пользователям с ролью admin.
sys_email Электронная почта Хранит входящие и исходящие сообщения. -
Большинство пользователей имеют свои шаблоны использования интерфейса. Включите приведенные ниже таблицы в процесс миграции, чтобы не нарушать их работу:
Системное название таблицы Заголовок таблицы Описание sys_menu_favorite Избранное Хранит пункты меню, добавленные пользователем в избранное. sys_filter Фильтр Хранит пользовательские фильтры. sys_user_preference Пользовательские предпочтения Хранит пользовательские настройки. -
Выполняя комплексную миграцию пользователей, не забывайте импортировать роли и объекты групп.
Системное название таблицы Заголовок таблицы Описание user Пользователь Хранит список пользователей экземпляра и связанную с ним информацию. employee Сотрудник Хранит список сотрудников и связанную с ним информацию. sys_role Роль Хранит список доступных ролей. sys_role_contains Роль содержит Таблица M2M, хранит связи между родительскими и дочерними ролями. sys_group Группа Хранит список доступных групп. sys_group_contains Группа содержит Таблица M2M, хранит связи между родительскими и дочерними группами. sys_user_has_role Роль пользователя Таблица M2M, хранит связи между пользователями и присвоенными им ролями. sys_user_group Пользовательская группа Таблица M2M, хранит связи между пользователями и группами, в которые они включены. sys_user_criteria Пользовательские критерии Хранит список пользовательских критериев.