- Так как приложение представляет собой совокупность всех пакетов, чтобы перенести его на другой экземпляр, необходимо собрать их все.
- Не вносите никаких изменений в существующие функции во время миграции. Чтобы внедрить какие-либо важные улучшения, следуйте одному из подходов:
- Пройдите все этапы цикла разработки, включая тестирование.
- Внедрите эти улучшения после завершения миграции.
- Миграция конфигураций выполняется посредством конфигурационных пакетов. Для упрощения объедините несколько пакетов в один перед экспортом. Чтобы обеспечить импорт только актуальных версий, создайте моментальные снимки каждого импортированного приложения, следуя приведенным ниже инструкциям:
- Создайте локальный пакет для переноса приложения. Например, локальный пакет для моментального снимка таблиц приложения Simple может называться [SA] — Snapshot diff.
- Сделайте этот локальный пакет текущим.
Перейдите в Настройка системы → Серверные скрипты и запустите представленный ниже скрипт, чтобы создать моментальные снимки всех таблиц с версиями:
Снимок таблицыconst table = new SimpleRecord('sys_db_table'); table.addQuery('is_vcs_enabled', true); table.addQuery('sys_id', '!=', '999999999999999998'); // исключить 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) доступны только для чтения и только пользователям с ролью admin. |
sys_history | История | Хранит записи изменений Истории. Записи в таблице История (sys_history) доступны только для чтения и только пользователям с ролью admin. |
sys_activities_stream_field | Активности | Хранит изменения полей записей, записанных виджетом Активности. Записи в таблице Активности (sys_activities_stream_field) доступны только для чтения и только пользователям с ролью admin. |
sys_email | Электронная почта | Хранит входящие и исходящие сообщения. |
5. Большинство пользователей имеют свои шаблоны использования интерфейса. Включите приведенные ниже таблицы в процесс миграции, чтобы не нарушать их работу:
Системное название таблицы | Заголовок таблицы | Описание |
---|---|---|
sys_menu_favorite | Избранное | Хранит пункты меню, добавленные пользователем в избранное. |
sys_filter | Фильтр | Хранит пользовательские фильтры. |
sys_user_preference | Пользовательские предпочтения | Хранит пользовательские настройки. |
6. Выполняя комплексную миграцию пользователей, не забывайте импортировать роли и объекты групп.
Системное название таблицы | Заголовок таблицы | Описание |
---|---|---|
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 | Пользовательские критерии | Хранит список пользовательских критериев. |
- No labels