Управление процессами CI/CD через shell-команды

Исходное окружение

Управление хранилищами

Все приложения и проекты хранятся в storage (хранилищах). По умолчанию используется хранилище с именем default.

  1. Посмотреть список доступных хранилищ

    karaf@root()> app-storage-list

Создание проекта

  1. Создать проект

    karaf@root()> project-create default [<groupId>/]<applicationName> [-v <version>]

    Где:

    Атрибут Описание

    default

    Имя хранилища по умолчанию.

    [<groupId>/]

    Опционально, имя группы проекта (по умолчанию entaxy.applications).

    <applicationName>

    Обязательно, имя проекта.

    -v <version>

    Опционально, версия проекта (по умолчанию 1.0.0).

    • Пример:

      karaf@root()> project-create default entaxy.test-app/test
      Created successfully
  2. Просмотр списка созданных проектов

    karaf@root()> project-list

Редактирование проекта

  1. Перейти в режим редактирования проекта

    karaf@root()> project-manage <applicationName>@default

    <applicationName> - имя проекта.

    • Пример:

      karaf@root()> project-manage test@default

      После перехода в режим редактирования проекта необходимо выбрать конкретную версию проекта для внесения изменений.

  2. Перейти в режим редактирования версии проекта

    karaf@root()> project-version-manage <version>

    <version> — версия проекта, с которой вы хотите работать.

    • Пример:

      karaf@root()> project-version-manage 1.0.0
  3. Создать новую версию проекта

    Если при создании проекта не была указана его версия, то автоматически создаётся версия 1.0.0. Для создания дополнительных версий используйте команду:

    karaf@root()> project-version-create <version>
  4. Добавление объектов

    После выбора версии можно начать добавлять объекты в проект.

    Список доступных объектов можно отобразить, нажав клавишу Tab.
    karaf@root()> project-version-add-object <objectName>

    <objectName> — уникальное имя объекта, который вы хотите добавить.

    • Пример:

      karaf@root()> project-version-add-object prf01.file-connector-in.main:entaxy.runtime.connector
  5. После добавления объекта рекомендуется просмотреть состав проекта для проверки всех включенных и зависимых объектов:

    karaf@root()> project-version-items
    Объекты с красным восклицательным знаком указывают на зависимые ресурсы или связанные объекты, которые требуют либо добавления в проект, либо их игнорирования (если они присутствуют на целевом окружении).
  6. Добавление объектов

    karaf@root()> project-item-add <objectName>

    <objectName> — уникальное имя объекта, который вы хотите добавить.

    • Пример:

      karaf@root()> project-item-add prf01:entaxy.runtime.profile
  7. Игнорирование объектов

    Для игнорирования объекта, используйте команду:

    karaf@root()> project-item-ignore <objectName>

    <objectName> — уникальное имя объекта, который вы хотите проигнорировать.

    • Пример:

      karaf@root()> project-item-ignore prf01.file-connector-in.main:entaxy.runtime.connector
  8. Просмотр состава проекта

    Чтобы проверить актуальный состав проекта и убедиться в отсутствии зависимостей с восклицательным знаком, повторите команду:

    karaf@root()> project-version-items

Commit и Build

  1. Сохранение изменений

    karaf@root()> project-version-commit
  2. Сборка артефакта

    Сборка создает финальный артефакт проекта в виде JAR-файла:

    karaf@root()> project-version-build
    • Пример результата:

      Result URL: entaxy-resource://entaxy-file-internal/.applications/projects/test/1.0.0/.build/test-1.0.0.jar
  3. Посмотреть информацию о билде

    Чтобы получить информацию о составе билда, используйте команду:

    karaf@root()> project-version-build-info

Экспорт артефакта

  1. После успешной сборки артефакт можно экспортировать в нужный репозиторий для дальнейшего использования на целевом окружении:

    karaf@root()> project-version-export-repository <repository_name>

    <repository_name> — имя репозитория.

  • Пример:

    karaf@root()> project-version-export-repository entaxy-shared
    Successfully exported

Целевое окружение

Управление хранилищами

  1. Посмотреть список доступных хранилищ

    Команда для вывода списка всех доступных хранилищ:

    karaf@root()> app-storage-list

Импорт артефакта

  1. Следующая команда импортирует артефакт сборки из репозитория Maven на целевое окружение.

    karaf@root()> app-import-repository default <mavenUrl>

    <mavenUrl> - путь к артефакту сборки в репозитории Maven.

    • Пример:

      karaf@root()> app-import-repository default entaxy.test-app/test/1.0.0/
  2. Список импортированных приложений

    karaf@root()> app-list
    • В списке будут отображены все приложения, доступные на текущем окружении.

    • Для импортированного приложения автоматически создается нулевая нередактируемая ревизия.

Редактирование приложения

  1. Переход в режим редактирования приложения

    karaf@root()> app-manage <application>@default

    <application> - имя приложения

    • Пример:

      karaf@root()> app-manage test@default
  2. Переход в режим редактирования версии приложения

    karaf@root()> app-version-manage <version>

    <version> - версия проекта, с которой вы хотите работать.

    • Пример:

      karaf@root()> app-version-manage 1.0.0

Ревизии приложения

  1. Статус ревизии

    karaf@root()> app-revision-info
    Для нового приложения автоматически создается нулевая нередактируемая ревизия. Если необходимо отредактировать конфигурационные файлы приложения, нужно создать новую ревизию.
  2. Создание новой ревизии

    karaf@root()> app-revision-create

Конфигурация

  1. Просмотр список конфигураций
    Для получения списка конфигурируемых объектов используйте следующую команду:

    karaf@root()> app-revision-config-list
  2. Перейти в режим конфигурации

    karaf@root()> app-revision-configure
  3. Редактирование конфигурации

    Для перехода в режим редактирования конфигурации выбранного объекта используйте следующую команду:

    karaf@root()> app-revision-config-edit <configId>

    <configId> - идентификатор конфигурационного объекта.

    • Пример:

      karaf@root()> app-revision-config-edit entaxy.runtime.connector.prf01.file_connector_in.main~CONFIG
  4. Просмотр текущего состояния конфигурации

    karaf@root()> app-revision-config-status
  5. Изменение параметров конфигурации

    Чтобы задать новые значения для параметров конфигурации, используйте команду:

    karaf@root()> app-revision-config-set propertyName propertyValue

    propertyName — имя параметра, который необходимо изменить.
    propertyValue — новое значение для указанного параметра.

    • Пример:

      karaf@root()> app-revision-config-set camel_directoryName prf01.file-conector-in123.main
  6. Просмотр текущего состояния конфигурации

    karaf@root()> app-revision-config-status
  7. Сохранение изменений

    После внесения изменений необходимо сохранить конфигурацию.

    karaf@root()> app-revision-config-commit
  8. Для возвращения в режим редактирования приложения после сохранения конфигурации, используйте следующие команды:

    karaf@root()> app-manage test@default
    karaf@root()> app-version-manage 1.0.0

Deploy и Install

Следующим шагом будет развертывание и установка приложения.

  1. Развертывание приложения

    karaf@root()> app-revision-deploy
  2. Установка приложения

    karaf@root()> app-revision-install