Синхронизация коллекций#

Синхронизация Private Automation Hub с другими реестрами коллекций позволяет решить следующие задачи:

  • сокращение времени загрузки коллекций в Automation Controller и на рабочие места пользователей Ansible;

  • поддержание актуальности версий коллекций в Private Automation Hub;

  • тонкая настройка доступности версий коллекций.

В результате синхронизации в Private Automation Hub будут доступны коллекции, распространяемые через сторонние реестры. Например, вы можете настроить синхронизацию Private Automation Hub с реестром Automation Hub, чтобы всегда иметь под рукой необходимые версии коллекций, созданных ПАО Группа Астра и ее партнерами.

Для настройки синхронизации коллекций с внешним реестром необходимо выполнить описанные далее действия.

Получение полномочий#

Некоторые реестры коллекций, например, Ansible Galaxy, не требуют полномочий для доступа к содержимому. Другие предоставляют доступ только авторизованным пользователям. В этом случае для синхронизации коллекций необходимо получить соответствующие полномочия.

  • Авторизация в Automation Hub осуществляется по токену. Для его создания воспользуйтесь инструкцией.

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

Private Automation Hub может использоваться как источник коллекций. Для авторизации в нем можно использовать следующие способы:

  • токен;

  • имя пользователя и пароль.

Настройка синхронизации#

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

  1. Согласно инструкции добавьте внешний репозиторий со следующими свойствами:

    • Название (Name): произвольное название внешнего репозитория, например, Automation Hub.

    • URL: URL репозитория во внешнем реестре, например:

      https://hub.astra-automation.ru/api/galaxy/content/validated/
      

      Важно

      URL репозитория должен завершаться символом /.

      По умолчанию коллекции загружаются из репозитория published. В этом случае допускается указать сокращенный URL:

      https://hub.astra-automation.ru/api/galaxy/
      
    • Требования YAML (YAML requirements) – если вы хотите синхронизировать все доступные коллекции, оставьте это поле пустым. Чтобы синхронизировать только определенные коллекции, укажите их названия, например:

      ---
      collections:
        - name: astra.ald_pro
        - name: astra.ceph
        - name: astra.nginx
      

    Также укажите полномочия, используемые для авторизации во внешнем реестре. При настройке синхронизации Private Automation Hub с реестром Automation Hub заполните поле Токен, а поля Имя пользователя и Пароль оставьте пустыми.

  2. Согласно инструкции создайте репозиторий, в котором будут размещаться коллекции, полученные из стороннего реестра. В поле Внешний репозиторий (Remote) выберите внешний репозиторий, созданный на предыдущем шаге.

Синхронизация#

Следуя инструкции запустите синхронизацию репозитория с внешним источником. Дождитесь перехода задания синхронизации в статус Успешно (Success).

Совет

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

  1. На панели навигации выберите пункт Управление задачами (Task management).

  2. Нажмите на ссылку с названием задачи синхронизации.

    Сообщения о ходе синхронизации выводятся на панели Сообщения о ходе исполнения (Progress messages).

Публикация#

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

  • Присвоена метка pipeline: approved.

    Если версии коллекций загружены в репозиторий с меткой pipeline: staging, проведите согласование.

    Если версии коллекций загружены в репозиторий без меток, измените его конвейер задач на Согласовано (Approved). Метка pipeline: approved будет присвоена автоматически.

  • Включена настройка Создать дистрибутив (Create distribution).

    Совет

    Эту настройку можно включить при изменении свойств репозитория.

Проверка результатов синхронизации#

Для проверки успешности синхронизации выполните следующие действия в Private Automation Hub и внешнем реестре:

  1. На панели навигации выберите пункт Коллекции ‣ Пространства имен (Collections ‣ Namespaces).

  2. Нажмите на ссылку с названием синхронизированного пространства имен.

  3. Убедитесь, что выбранное пространство имен в Private Automation Hub и внешнем реестре содержит один и тот же набор коллекций.