Экспорт коллекций из образа#
Добавлено в версии 1.2-upd1.
Для быстрого экспорта набора коллекций, проверенных или сертифицированных для использования в Astra Automation, в состав образа среды исполнения aa-full-ee
входят следующие компоненты:
набор коллекций;
утилита
export_collections.py
для загрузки этих коллекций в приватный реестр.
Утилита принимает две команды:
list
– просмотр доступных коллекций;publish
– публикация коллекций.
Синтаксис вызова утилиты выглядит следующим образом:
podman run aa-full-ee:latest python3 export_collections.py [arguments] <command> [command_arguments]
Здесь:
[arguments] – общие аргументы;
<command> – команда;
[command_arguments] – аргументы команды.
Общие аргументы#
Утилита поддерживает следующие аргументы, доступные для использования с любой из команд:
- -d <dir>, --collections-dir <dir>#
Путь к каталогу, в котором хранятся коллекции Ansible.
Значение аргумента также может быть передано через переменную окружения
COLLECTIONS_DIR
.Значение по умолчанию:
/usr/share/ansible/collections/ansible_collections/
.
- -h, --help#
Вывод справки.
Команды#
Утилита поддерживает следующие команды:
- list#
Вывод списка доступных для публикации коллекций.
- publish#
Публикация выбранных коллекций в реестр коллекций.
Поддерживаемые аргументы:
--all
– публикация всех доступных коллекций.--autocreate
– автоматическое создание пространства имен (namespace). Если аргумент не задан, то пространство имен должно быть создано вручную заранее. В противном случае работа утилиты завершится с ошибкой.Добавлено в версии 1.2-upd3.
--collection <namespace.collection>
– название одной коллекции для публикации.--namespace <namespace>
– пространство имен для публикации всех содержащихся в нем коллекций.-s <url>
,--galaxy-url <url>
– IP-адрес или доменное имя реестра коллекций. Значение аргумента также может быть передано через переменную окруженияANSIBLE_GALAXY_SERVER_GALAXY_URL
.Обязательный аргумент, если переменная окружения не задана.
Добавлено в версии 1.2-upd3.
-t <token>
,--validation-token <token>
– токен доступа к API реестра коллекций. Значение аргумента также может быть передано через переменную окруженияANSIBLE_GALAXY_SERVER_VALIDATED_TOKEN
.Обязательный аргумент, если переменная окружения не задана.
Добавлено в версии 1.2-upd3.
Примеры#
Для изучения возможностей утилиты ознакомьтесь с приведенными ниже примерами.
Список доступных коллекций#
Следующий пример демонстрирует вывод списка коллекций из стандартного каталога /usr/share/ansible/collections/ansible_collections/
:
podman run aa-full-ee:latest python3 export_collections.py list
Список коллекций из пользовательского каталога#
Следующий пример демонстрирует вывод списка коллекций из указанного каталога:
podman run aa-full-ee:latest python3 export_collections.py -d /data/collections list
Публикация одной коллекции#
Следующий пример демонстрирует публикацию одной коллекции в Private Automation Hub:
podman run \
-e ANSIBLE_GALAXY_SERVER_GALAXY_URL=hub.example.org \
-e ANSIBLE_GALAXY_SERVER_VALIDATED_TOKEN=TOKEN123 \
aa-full-ee:latest \
python3 export_collections.py publish --collection astra.ald_pro
Публикация всех коллекций в пространстве имен#
Следующий пример демонстрирует публикацию всех коллекций в указанном пространстве имен:
podman run \
-e ANSIBLE_GALAXY_SERVER_GALAXY_URL=hub.example.org \
-e ANSIBLE_GALAXY_SERVER_VALIDATED_TOKEN=TOKEN123 \
aa-full-ee:latest \
python3 export_collections.py publish --namespace astra
Публикация всех доступных коллекций#
Следующий пример демонстрирует публикацию всех доступных коллекций в Private Automation Hub:
podman run \
-e ANSIBLE_GALAXY_SERVER_GALAXY_URL=hub.example.org \
-e ANSIBLE_GALAXY_SERVER_VALIDATED_TOKEN=TOKEN123 \
aa-full-ee:latest \
python3 export_collections.py publish --all