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.