Перенос изменений при помощи SVN
Glossary Item Box
Общие сведения
Система управления версиями является опциональным компонентом, то есть bpm'online может работать без нее. Однако, если предполагается активная пользовательская доработка приложения, то использование системы управления версиями является обязательным. Особенно, если доработка ведется группой разработчиков.
Назначение системы управления версиями в bpm'online:
- Перенос изменений между рабочими средами, например, между средами разработки.
- Хранение версий конфигурационных схем и пакетов.
Bpm'online поддерживает работу с системой управления версиями Subversion (SVN) версии 1.8 и выше. Детально ознакомиться с особенностями использования SVN можно в документации. Как настроить и работать с хранилищем SVN в приложении bpm'online, подробно изложено в статье "Как настроить хранилище SVN".
Преимущества использования SVN для переноса изменений
- Возможность переноса между рабочими средами и конфигурациями не только схем, но и пакетов.
- Возможность переноса привязанных к пакету данных, например, наполнения справочников или разделов.
- Автоматическая установка из SVN пакетов-зависимостей.
- Независимость от службы поддержки при переносе изменений в облачной среде.
Рекомендуемая последовательность переноса изменений с помощью SVN
1. Удостовериться, что приложение, в которое нужно перенести изменения, настроено для работы с SVN.
Подробно процесс настройки приложения для работы с системой контроля версий приведен в статье "Как настроить хранилище SVN".
2. Включить механизмы автоматического применения изменений
Для того чтобы необходимые изменения применились после переноса, нужно включить механизмы автоматического применения изменений. Для этого необходимо в файле Web.config, который находится в каталоге Terrasoft.WebApp, установить значение true для следующих ключей элемента appSettings:
<add key="AutoUpdateOnCommit" value="true" /> <add key="AutoUpdateDBStructure" value="true" /> <add key="AutoInstallSqlScript" value="true" /> <add key="AutoInstallPackageData" value="true" />
Ключ AutoUpdateOnCommit отвечает за автоматическое обновление пакетов из SVN перед их заливкой. Если для этого ключа установлено значение false, то перед заливкой в SVN приложение предупредит пользователя о необходимости обновления в случае, если схемы пакета были изменены. Ключи AutoUpdateDBStructure, AutoInstallSqlScript, AutoInstallPackageData отвечают соответственно за автоматическое обновление структуры базы данных, автоматическую установку SQL-сценариев и установку привязанных данных.
3. Удостовериться, что все необходимые данные привязаны
Прежде чем переносить пакет из приложения, необходимо удостовериться, что все данные, которые необходимо перенести, привязаны к пакету. Такими данными могут быть, например, наполнение справочников или раздела.
К СВЕДЕНИЮ Если в процессе создания раздела использовался мастер раздела, то некоторые данные привязываются к текущему пакету автоматически. |
4. Удостовериться, что все зависимости пакета могут быть перенесены
Во время разработки к пользовательскому пакету могут быть добавлены зависимости от других пакетов. Если пакеты-зависимости разработаны сторонними разработчиками, то необходимо удостовериться в том, что они уже установлены в приложение, в которое будет осуществляться перенос пользовательского пакета. Если пакеты-зависимости находятся в доступном хранилище SVN, то при необходимости они будут установлены автоматически.
5. Установить пакет из хранилища
ВАЖНО! Перед обновлением приложения пользователем с помощью SVN необходимо произвести резервное копирование базы данных. Если приложение развернуто в облаке, то необходимо обратиться в службу поддержки. Возможность возврата на предыдущую версию посредством SVN не предусмотрена! |
Установка пакета из хранилища выполняется из раздела [Конфигурация]. Подробно об инструментах этого раздела можно узнать из статьи "Раздел [Конфигурация]".
Для установки пакета из хранилища необходимо на вкладке [Пакеты] раздела [Конфигурация] выбрать из контекстного меню команду [Установить пакет из хранилища] (рис. 1).
Рис. 1. — Контекстное меню вкладки [Пакеты]
Затем в появившемся диалоговом окне необходимо выбрать хранилище, название и версию устанавливаемого пакета, после чего нажать на кнопку [Установить] (рис. 2).
Рис. 2. — Диалоговое окно установки пакета из хранилища
Во время установки пакета будут автоматически применены привязанные данные, а также будут установлены зависимости.
Если в силу каких-либо причин автоматическое применение изменений не было включено (см. шаг 2), то необходимо применить изменения вручную. Для этого необходимо для установленного пакета в разделе [Конфигурация] выполнить следующие действия:
- Сгенерировать исходные коды для элементов, требующих генерации.
- Компилировать измененное.
- Обновить структуру базы данных.
- Установить при необходимости SQL-скрипты.
- Установить привязанные данные.
К СВЕДЕНИЮ При выполнении вручную обновления структуры базы данных, установки SQL-скриптов и привязанных данных в колонках [Требуется обновление БД] и [Требует установки в БД] дизайнеров отображается необходимость соответствующих действий для схем, скриптов и данных. В случае возникновения ошибок текст последней ошибки можно увидеть в колонке [Текст последней ошибки]. Не все эти колонки обтображаются в реестре вкладок [Схемы], [SQL сценарии] и [Данные] раздела [Конфигурация]. При необходимости их можно добавить при помощи команды контекстного меню [Настроить колонки]. |