Репозитории Entaxy ION

Репозитории играют важную роль в управлении артефактами и ресурсами в системе Entaxy ION. Представляя собой специальное хранилище, содержащее необходимые компоненты, библиотеки и другие ресурсы, используемые для работы системы, позволяя управлять всеми артефактами из одного места.

Системные репозитории

На интеграционной платформе по умолчанию доступны три системных репозитория (entaxy-local, entaxy-shared, entaxy-updates). Настройка параметров репозиториев осуществляется в конфигурационном файле ru.entaxy.esb.artifact.repositories.

  • Локальный репозиторий (entaxy-local):

Локальное хранилище представляет собой репозиторий, расположенный на конкретном узле (ноде) системы Entaxy ION. Оно используется для хранения и управления требующимися на данном узле артефактами (коннекции которые генерируются Entaxy по умолчанию - локальные коннекции к брокеру, базе данных и т. д.). Репозиторий обеспечивает быстрый доступ к локальным ресурсам.

  • Общий кластерный репозиторий (entaxy-shared):

Общий кластерный репозиторий служит для обмена ресурсами между различными узлами (нодами) системы Entaxy ION, развернутыми в кластере. Этот репозиторий может использоваться для общего доступа к ресурсам (схемы, профили, коннекторы и т.д.), которые нужны всем узлам кластера, а также как локальный Nexus.

  • Репозиторий обновлений и дополнительных компонентов (entaxy-updates):

Репозиторий предназначен для получения обновлений программных артефактов и дополнительных компонентов системы Entaxy ION. Этот репозиторий всегда смотрит на Nexus (https://nexus.entaxy.ru/nexus/repository/entaxy-public/).

Настройка репозиториев в зависимости от типа контура

contur 1

Структура и взаимодействие компонентов в изолированном контуре, обеспечивающем управление репозиториями без доступа в Интернет и использования Nexus.

contur 2

Структура и взаимодействие компонентов в изолированном контуре, обеспечивающее управление репозиториями в ограниченной сетевой среде.

contur 3

Конфигурация, которая позволяет управлять репозиториями в изолированной сетевой среде и одновременно иметь доступ к внешним ресурсам через контур Nexus.

contur 4

Конфигурация, предоставляющая управление репозиториями в контуре без Nexus, но с возможностью доступа к внешним ресурсам через сеть Интернет.

contur 5

Иллюстрирует конфигурацию, предоставляющую управление репозиториями в контуре с Nexus и возможностью доступа к внешним ресурсам через сеть Интернет.

Кастомные репозитории

В дереве меню перейдите в раздел "Репозитории" и перейдите на вкладку Repositories.

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

  1. Для создания репозитория нажмите на кнопку "Add repository".

    repository section
  2. Откроется меню настроек для создания нового репозитория.

    • Настройки General

      repository create general
      • *Factory: Идентификатор используемой фабрики. Обязательный параметр с предустановленным значением artifact-repository;

      • *Object Id: обязательный параметр уникального идентификатора репозитория;

      • Display name: отображаемое имя репозитория. Необязательное поле;

      • Location: Путь к директории репозитория. Если оставить параметр пустым путь к репозиторию будет - {Entaxy Home}/data/cave/repository/{Object Id};

        После того как значение параметра Location будет задано, не рекомендуется изменять его.
      • *Read Only: активация режима только для чтения;

      • *Snapshots: активация поддержки снапшотов;

      • Lookup Enabled: чекбокс, активный по умолчанию. Добавляет репозиторий в список репозиториев для поиска артефактов (org.ops4j.pax.url.mvn.repositories).

    • Настройки Remotes

      repository create remotes
      • *Proxy: включает управление удаленным репозиторием;

      • Mirror: включает сохранение копии артефакта в локальном репозитории при использовании прокси. Требуется при загрузке артефактов из удаленных репозиториев. Не требуется при загрузке артефактов в удаленный репозиторий.

      • *Upload enabled: включает загрузку в удаленный репозиторий. Если чек-бокс активирован, первый удаленный репозиторий будет использован для загрузки.

Создание локального репозитория

  1. Для создания локального репозитория заполните необходимые параметры:

    Пример:

    example local repo
    • Object Id: Обязательный параметр уникального идентификатора репозитория. Например example-repo.

    • Location: Путь к директории репозитория

      • Относительный путь (например, my-repository) указывает на папку в каталоге karaf/

      • Абсолютный путь (начиная с /) указывает на папку в корневом каталоге диска

        В обоих случаях папка будет создана, если она не существует.

    • Lookup Enabled: Добавляет репозиторий в список репозиториев для поиска артефактов (org.ops4j.pax.url.mvn.repositories). Активный чек-бокс по умолчанию.

  2. Проверьте все введенные данные и настройки;

  3. Нажмите на кнопку "Add" для создания репозитория. Теперь можно выбрать созданный репозиторий при экспорте билда в CI/CD.

Подключение к удаленному репозиторию

Чтобы создать подключение к удаленному репозиторию, заполните обязательные параметры в разделе General, затем перейдите в раздел Remotes, укажите необходимые настройки и нажмите кнопку Add.

Пример:

  1. Настройки раздела General:

    remote repo general
    • Object Id: Обязательный параметр уникального идентификатора репозитория. Например, nexus-repo

    • Lookup Enabled: Добавляет репозиторий в список репозиториев для поиска артефактов (org.ops4j.pax.url.mvn.repositories). Активный чек-бокс по умолчанию.

      При необходимости заполните остальные параметры вкладки General.

  2. Настройки раздела Remotes:

    remote repo remotes
    • Proxy: использование прокси-сервера для доступа к удаленному репозиторию.

    • Upload enabled: разрешает загрузку в удалённый репозиторий. Если чек-бокс активирован, первый удаленный репозиторий будет использован для загрузки.

  3. Для настройки параметров удаленного репозитория нажмите кнопку Add Remote repository и выберите тип репозитория:

    addremote repository

Настройки Nexus M2 repository

  1. Настройки раздела General:

    nexus general example
    • Name: имя удалённого репозитория. Может содержать только латинские буквы, цифры и дефис и должно начинаться с буквы.

    • Protocol: используемый протокол (http или https).

    • Host: адрес сервера.

    • Port: сетевой порт.

    • Path: контекстный путь к репозиторию в Nexus (например, /repository/maven-test-hosted/)

  2. Настройки раздела Authentication:

    nexus authentication example
    • Username: учетная запись, используемая для доступа к удаленному репозиторию.

    • Password — пароль учетной записи для доступа к удалённому репозиторию.

  3. Настройки раздела Search:

    nexus search example
    • Search enabled: Включает использование поиска артефактов через Nexus.

    • Nexus Search Assets API: определяет способ поиска артефактов в Nexus через REST API. Если значение не указано, используется основной URL Nexus с добавлением пути /service/rest/v1/search/assets.

    • Nexus repository name: имя репозитория в Nexus, в котором выполняется поиск и загрузка артефактов. Если значение не указано, имя репозитория будет извлечено из основного URL по шаблону /repository/<repository_name>.

    После заполнения настроек и нажмите на кнопку Add для добавления репозитория. Теперь можно выбрать созданный репозиторий при экспорте билда в CI/CD.

Для импорта из репозитория необходимо включить чекбокс Mirror.

Настройки Common M2 repository

  1. Настройки раздела General:

    common general example
    • Name: имя удалённого репозитория. Может содержать только латинские буквы, цифры и дефис и должно начинаться с буквы.

    • Protocol: используемый протокол (http или https).

    • Host: адрес сервера.

    • Port: сетевой порт.

    • Path: контекстный путь к репозиторию в Nexus (например, /repository/internal/)

  2. Настройки раздела Authentication:

    common authentication example
    • Username: учетная запись, используемая для доступа к удаленному репозиторию.

    • Password — пароль учетной записи для доступа к удалённому репозиторию.

    После заполнения настроек и нажмите на кнопку Add для добавления репозитория. Теперь можно выбрать созданный репозиторий при экспорте билда в CI/CD.

Для импорта из репозитория необходимо включить чекбокс Mirror.