Настройка доступа к Automation Hub#
Доступ к содержимому Automation Hub осуществляется по токену.
Токен требуется как для получения коллекций и образов среды исполнения из Automation Hub, так и для настройки клиента ansible-galaxy на установку коллекций напрямую из реестра.
Получение токена#
Для создания токена выполните следующие действия:
Авторизуйтесь на портале Automation Hub.
На панели навигации выберите ().
Нажмите кнопку Загрузить токен (Load token).
Используйте показанный на странице токен для выполнения следующих операций:
настройка клиента ansible-galaxy для установки коллекций напрямую из Automation Hub;
синхронизация коллекций в Private Automation Hub с Automation Hub;
создание образа среды исполнения, содержащего необходимые коллекции.
Важно
Период действия токена – один год. По истечении указанного времени его необходимо будет создать заново.
При создании нового токена предыдущий перестает действовать немедленно.
Настройка клиента ansible-galaxy#
Клиент ansible-galaxy обращается к реестру Automation Hub по протоколу HTTPS и авторизуется по токену.
Для установки коллекций напрямую из Automation Hub настройте клиент одним из описанных далее способов.
Файл ansible.cfg#
В каталоге проекта создайте файл ansible.cfg, описав в нем реестр Automation Hub:
ansible.cfg#[galaxy]
server_list = astra_hub
[galaxy_server.astra_hub]
url = https://hub.astra-automation.ru/api/galaxy/content/validated/
token = <token>
Здесь:
server_list– список условных названий реестров, из которых загружаются коллекции. Он заменяет список реестров по умолчанию, поэтому для установки коллекций из Ansible Galaxy добавьте в него соответствующий сервер и опишите его отдельной секцией.astra_hub– условное название реестра Automation Hub, указанное в параметреserver_listи в названии секции[galaxy_server.astra_hub].url– URL репозитория коллекций Automation Hub. Репозиторийvalidatedсодержит проверенные коллекции ПАО Группа Астра и ее партнеров.Важно
URL репозитория должен завершаться символом
/.<token>– значение токена для доступа к Automation Hub.
Совет
При установке коллекций в среде исполнения командой ansible-navigator exec (см. применение коллекций) разместите файл ansible.cfg в каталоге проекта рядом с файлом requirements.yml – этот каталог доступен внутри среды исполнения.
Переменные окружения#
Параметры сервера можно задать переменными окружения вместо файла ansible.cfg.
Этот способ удобен, когда токен нежелательно хранить в файле проекта, например в конвейере CI:
export ANSIBLE_GALAXY_SERVER_LIST=astra_hub
export ANSIBLE_GALAXY_SERVER_ASTRA_HUB_URL=https://hub.astra-automation.ru/api/galaxy/content/validated/
export ANSIBLE_GALAXY_SERVER_ASTRA_HUB_TOKEN=<token>
Название переменной с параметром сервера формируется по шаблону ANSIBLE_GALAXY_SERVER_<NAME>_<PARAMETER>.
Здесь:
<NAME>– условное название сервера, набранное в верхнем регистре.<PARAMETER>– название параметра, напримерURLилиTOKEN.
Например, для сервера astra_hub токен задается переменной ANSIBLE_GALAXY_SERVER_ASTRA_HUB_TOKEN.