Entaxy CI/CD
CI/CD - система непрерывной интеграции и развертывания на платформе Entaxy ION.
Интерфейс CI/CD
-
Entaxy CI/CD:
-
Applications (приложение, которое разворачивается в целевой среде);
-
default (хранилище, используемое для сохранения приложения и связанных с ним файлов и ресурсов).
-
-
Projects (набор конфигураций, объектов и прочих ресурсов необходимых для сборки приложения);
-
default (хранилище, используемое для сохранения проекта и связанных с ним файлов и ресурсов).
-
-
Проект
Создание проекта
-
Находясь в разделе
Projects
, нажмите кнопкуCreate Project
.Откроется окно с перечнем параметров:
-
* Name: обязательное поле для указания названия проекта;
-
Group: необязательное поле для указания названия группы, в которой будет размещен создаваемый проект (по умолчанию
entaxy.applications
); -
* Storage: обязательное поле выбора используемого хранилища.
-
* Version: обязательное поле для указания версии проекта. По умолчанию устанавливается версия
1.0.0
-
-
После заполнения всех необходимых полей нажмите кнопку
Save
, чтобы сохранить проект.Созданный проект появится в дереве проектов.
-
Name - номер версии проекта;
-
Build Available - наличие билда для данной версии;
-
Actions - кнопка 'Remove', для удаления выбранной версии.
-
Управление версиями проекта
При создании проекта в дереве проектов автоматически создается версия, указанная при его создании.
Для управления версиями проекта выберите его и перейдите к нужной версии.
Добавить версию проекта
Чтобы добавить новую версию, выберите нужный проект и перейдите на вкладку Versions
, затем нажмите кнопку Add Version
и воспользуйтесь одним из двух предложенных способов:
-
Add Version From Scratch - добавить новую версию с нуля;
Created version: введите номер версии в формате x.x.x (номер версии должен иметь форму х.х.х, где х - неотрицательные целые числа и не должны содержать ведущих нулей) и нажмите кнопку Save.
-
Add Version From Existent - создать новую версию, используя уже существующую версию как шаблон для внесения изменений и добавления новых данных.
Created version: введите номер версии в формате x.x.x (номер версии должен иметь форму х.х.х, где х - неотрицательные целые числа и не должны содержать ведущих нулей);
Prototype Version: выберите из выпадающего списка, на основе какой версии будет создана новая версия и нажмите кнопку Save.
Добавление объектов в версию проекта
-
Для добавления объектов перейдите на вкладку
Project
в выбранной версии проекта и нажмите кнопкуAdd Objects
(в открывшемся окне вы увидите список доступных объектов с чек-боксами для выбора, их имена и типы). -
Отметьте необходимые объекты и нажмите кнопку
Add
.-
После этого вам может быть предложено добавить объекты и ресурсы, связанные с добавляемыми объектами. Вы можете отметить необходимые объекты и добавить, их нажав на кнопку "Add"", или нажать "Skip", чтобы пропустить.
Связанные объекты пропущенные на этом шаге можно будет добавить позже. Для этого выберите объект и нажмите кнопку "Add Related".
-
При добавлении объекта в проект автоматически добавятся зависимые от него объекты и ресурсы в статусе
REQUIRED
, необходимые для корректного функционирования добавляемого объекта.Если среди зависимых объектов присутствуют объекты являющиеся инфраструктурными компонентами платформы (имеющие признак platform/system), они будут иметь неизменяемый статус IGNORED
.Эти объекты можно либо включить в проект, либо проигнорировать. Для изменения статуса объекта отметьте его чек-бокс и нажмите кнопку
Include Selected
, чтобы включить объект в проект. В этом случае в столбцахRequired
иIgnored
отобразится иконка в виде крестика, указывающая, что объект добавлен в проект, но не требуется на целевом окружении и не проигнорирован.При нажатии на кнопку
Ignore Selected
объект будет проигнорирован в проекте. В этом случае в столбцахRequired
иIgnored
отобразится иконка с зеленой галочкой, указывая на то, что проигнорированный объект требуется на целевом окружении и исключен из проекта.При нажатии на кнопку
Remove Selected
объект будет удален из проекта, если он не является обязательным для других объектов. В случае, если объект требуется для другого, не удаляемого объекта, его статус изменится наRequired
(если до этого он былIgnored
илиIncluded
) и появится оповещение с указанием зависимого объекта и его удаление будет возможно только вместе с зависимым объектом.
-
Include Selected
- включить выбранные объекты в проект; -
Ignore Selected
- проигнорировать выбранные объекты; -
Remove Selected
- удалить выбранные объекты из проекта.Список добавляемых объектов представлен в следующем виде:
-
Status: отображает текущее состояние объектов:
Обозначение Название Описание INCLUDED
Означает, что объект будет добавлен в проект.
REQUIRED
Указывает на необходимость данного объекта в проекте. Требуется обязательное определение его статуса (IGNORED/INCLUDED).
IGNORED
Означает, что объект будет проигнорирован (в случае игнорирования объекта предполагается, что этот объект находится на конечном окружении).
-
Id: Уникальный идентификатор объекта;
-
Type: Тип объекта;
-
Scope: Окружение объекта;
-
Required: Указывает, является ли объект необходимым для проекта;
-
Ignored: Указывает, будет ли объект проигнорирован.
-
-
-
Сделав все необходимые изменения выполняем
Commit
и осуществляем сборку билда нажатием на кнопкуBuild
.
Сборка проекта невозможна, если среди объектов присутствует объект со статусом REQUIRED. |
При сборке и развертывании приложения необходимо учитывать использование сертификатов и ключей, хранящихся в keystores, для обеспечения безопасного взаимодействия между компонентами системы. Поскольку автоматическое отслеживание алиасов в keystores не поддерживается, важно вручную проверить и убедиться, что все необходимые алиасы правильно настроены в целевом окружении. |
Работа с билдом
После успешной сборки проекта мы получаем готовый билд.
В дереве проектов появится раздел build info
.
Каждая вкладка раздела build info
содержит информацию о: названии проекта, его версии и Maven URL (который используется в разделе applications для импорта билда).
Кроме того, имеются следующие варианты экспорта билда:
Вы можете экспортировать его в файл или в один из репозиториев.
Описание вкладок:
-
Items:
Объекты входящие в билд с указанием: id, type и component. -
Requirements
Объекты, которые были проигнорированы при сборке проекта (предполагается, что они присутствуют на конечном окружении). -
Components
Перечень компонентов с указанием id, type и priority.
Системные репозитории
На интеграционной платформе по умолчанию доступны три системных репозитория (entaxy-local, entaxy-shared, entaxy-updates). Настройка параметров репозиториев осуществляется в конфигурационном файле ru.entaxy.esb.artifact.repositories.cfg.
Подробнее о системных репозиториях вы можете прочитать здесь: Репозитории Entaxy ION |
Кастомные репозитории
Подробнее о создании кастомных репозиториев можно прочитать здесь.
Приложение
Создание приложения
-
Находясь в разделе
Applications
, нажмите кнопкуImport
.-
Откроется окно с перечнем параметров:
-
Выберите один из предложенных вариантов импорта собранного проекта.
-
Import From File - импортировать приложение из .jar файла:
-
Storage - выбрать используемое хранилище;
-
File - перетащите файл со сборкой проекта сюда или нажмите, чтобы выбрать его из файловой системы.
-
Import From Repository - импортировать приложение по ссылке из репозитория.
-
Storage - выбрать используемое хранилище;
-
Maven url - доступный в разделе
build info
дерева проектов.После успешного импорта сборки проекта в дереве приложений отобразится добавленное приложение.
-
Name - название приложения;
-
Versions & Revisions - номер версии/номер последней ревизии/номер установленной ревизии.
Для управления созданным приложением выберите его в дереве приложений.
-
Добавление ревизий приложения
После успешного импорта в дереве проектов автоматически появляется соответствующее приложение с неизменяемой нулевой ревизией.
Текущий статус ревизии отображается рядом с номером.
Основное различие между ревизиями заключается в их конфигурации. |
-
Для добавления новой ревизии приложения выберите необходимую версию приложения в дереве приложений и находясь на вкладке
Application
нажмите кнопкуAdd Revision
:Для добавления ревизии воспользуйтесь одним из предлагаемых способов:
-
Add Revision - добавить новую ревизию (новая ревизия будет создана на основе последней);
-
Add Revision From Existent - добавить новую ревизию на основе существующей (выберите нужную ревизию из выпадающего списка).
На вкладке
Application
так же представлена информация о приложении.-
Таблица Items - содержит список объектов включенных в приложение:
Revisionable
- определяет, может ли объект быть изменен или обновлен в рамках ревизии.
Editable
- указывает на возможность редактирования конфигурации объекта. -
Таблица Requirements - содержит список проигнорированных объектов, где поле
Status
показывает их наличие на конечном окружении.
-
-
Изменение конфигурации
Для объектов с типом CONFIG
предусмотрена поддержка редактирования конфигурации.
Нулевая ревизия является неизменяемой, для внесения изменений в конфигурации необходимо создать новую ревизию. |
-
Чтобы внести изменения в конфигурацию, перейдите к нужной ревизии приложения в дереве приложений (не нулевой). И нажмите кнопку "Configure". После этого статус ревизии изменится на -
[CONFIGURED]
. -
Установка локальных значений для выбранных файлов конфигурации: отметьте необходимые файлы конфигурации с помощью чек-боксов и нажмите кнопку "Set Local Values" (Установить локальные значения) для автоматического применения настроек.
-
Каждый файл конфигурации можно редактировать отдельно и для него доступны следующие опции:
-
Clear Changes - отменяет внесенные изменения и возвращает файл к исходному состоянию;
-
Copy Local Values - копирует текущие локальные значения для файла конфигурации;
-
Save Changes - сохраняет внесенные изменения в файл конфигурации;
-
-
Внесите необходимые изменения в выбранный объект, а затем нажмите кнопку "Save Changes".
Деплой и установка приложения
-
Для развертывания и установки выбранной ревизии приложения нажмите на кнопки
Deploy
(статус ревизии изменится на - [DEPLOYED]) -
И
Install
(статус ревизии изменится на - [INSTALLED]) соответственно.
Удаление приложения
Для удаления установленного приложения выберите соответствующую установленную ревизию и нажмите кнопку Uninstall
.
Приложение будет удалено из целевой среды, и статус ревизии будет изменен на UNINSTALLED
.
Приложение со статусом UNINSTALLED
можно повторно установить нажав на кнопку Install
.