ansible-galaxy#
Утилита ansible-galaxy используется для управления ролями и коллекциями Ansible, включая их загрузку, установку, удаление и публикацию.
В минимальном формате запуск утилиты ansible-galaxy выглядит следующим образом
ansible-galaxy [ARGUMENTS] TYPE ACTION [ACTION_ARGUMENTS]
где:
ARGUMENTS– общие аргументыansible-galaxy.TYPE– тип объекта:roleдля ролей илиcollectionдля коллекций.ACTION– действие, которое необходимо выполнить над объектом.ACTION_ARGUMENTS– дополнительные аргументы, зависящие от выбранного типа и действия.
Общие аргументы:
- --version#
Вывод версии Ansible и утилиты
ansible-galaxy.
- -h, --help#
Вывод справки.
- -v, --verbose#
Включение подробного вывода, показывающего больше информации о выполнении команды.
Увеличение уровня детализации возможно при добавлении нескольких
-v. Утилита может выводить до-vvvvvv. Рекомендуемый уровень для общей отладки –-vvv, для отладки соединений –-vvvv.
Действия с коллекциями#
- collection download#
Загрузка коллекции и ее зависимостей в виде архива в формате
.tar.gz.Доступные аргументы:
- --clear-response-cache#
Очистка кеша ответов сервера.
- --no-cache#
Отключение использования кеша сервера.
- --pre#
Включение использования предварительных (pre-release) версии коллекций.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -n, --no-deps#
Отключение загрузки коллекций, перечисленных в списке зависимостей.
- -p <DOWNLOAD_PATH>, --download-path <DOWNLOAD_PATH>#
Путь к каталогу для сохранения загруженных коллекций.
- -r <REQUIREMENTS>, --requirements-file <REQUIREMENTS>#
Путь к файлу формата YAML со списком коллекций для загрузки.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection init#
Создание структуры новой коллекции Ansible.
Доступные аргументы:
- --collection-skeleton <COLLECTION_SKELETON>#
Путь к шаблону коллекции.
- --init-path <INIT_PATH>#
Путь к каталогу, в котором будет создана коллекция.
Значение по умолчанию: текущий каталог.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -e, --extra-vars#
Передача дополнительных переменных в формате
key=value, YAML или JSON.Может быть указан несколько раз.
- -f, --force#
Перезапись существующей коллекции.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection build#
Создание архива в формате
.tar.gzс коллекцией Ansible.Доступные аргументы:
- --output-path <OUTPUT_PATH>#
Каталог, в котором будет сохранен архив.
Значение по умолчанию: текущий каталог.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -f, --force#
Перезапись существующей коллекции.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection publish#
Публикация архива коллекции в реестр коллекций Ansible.
Доступные аргументы:
- --import-timeout <IMPORT_TIMEOUT>#
Таймаут ожидания завершения импорта коллекции (в секундах).
- --no-wait#
Отключение ожидания завершения импорта.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection install#
Установка коллекции из Ansible Galaxy.
Доступные аргументы:
- --clear-response-cache#
Очистка кеша ответов сервера.
- --disable-gpg-verify#
Отключение проверки подписи GPG.
- --force-with-deps#
Принудительная переустановка коллекции и ее зависимостей.
- --ignore-signature-status-codes#
Список кодов статусов (через пробел), игнорируемых при проверке подписи.
Может быть указан несколько раз.
Полный список кодов представлен на странице GitHub.
- --keyring <KEYRING>#
Хранилище ключей, используемое при проверке подписи.
- --no-cache#
Отключение использования кеша сервера.
- --offline#
Установка коллекции без подключения к серверу.
- --pre#
Включение использования предварительных (pre-release) версии коллекций.
- --required-valid-signature-count <REQUIRED_VALID_SIGNATURE_COUNT>#
Задание количества подписей, необходимого для подтверждения подлинности коллекции.
Возможные значения:
Положительное число – минимально необходимое количество подписей. Если число подписей меньше заданного значения, проверка завершится с ошибкой, а установка будет прервана.
-1– требует, чтобы все доступные подписи для проверки подлинности коллекции были корректными. Если хотя бы одна подпись недействительна, проверка завершится с ошибкой, а установка будет прервана.+all– требует, чтобы хотя бы одна подпись для проверки подлинности коллекции была корректной. Если хотя бы одна подпись корректна, проверка подлинности завершится успешно, а установка будет продолжена.
- --signature#
Дополнительный источник подписи для верификации
MANIFEST.json.Может быть указан несколько раз.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -U, --upgrade#
Обновление установленной коллекции.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -f, --force#
Перезапись существующей коллекции.
- -i, --ignore-errors#
Игнорирование ошибок и продолжение установки следующих коллекций. Не действует на ошибки, связанные с зависимостями.
- -n, --no-deps#
Отключение загрузки коллекций, перечисленных в списке зависимостей.
- -p <COLLECTIONS_PATH>, --collections-path <COLLECTIONS_PATH>#
Путь к каталогу для установки коллекций.
- -r <REQUIREMENTS>, --requirements-file <REQUIREMENTS>#
Путь к файлу формата YAML со списком коллекций для установки.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection list#
Вывод списка установленных коллекций.
Доступные аргументы:
- --format <OUTPUT_FORMAT>#
Формат вывода списка коллекций.
- --timeout <TIMEOUT>#
Время ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибок проверки сертификатов TLS.
- -p, --collections-path#
Каталоги для поиска коллекций.
Пути разделяются знаком
:.Может быть указан несколько раз.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- collection verify#
Проверка контрольных сумм установленных коллекций и сравнение их с версиями на сервере Ansible Galaxy.
Не проверяет зависимости.
Доступные аргументы:
- --ignore-signature-status-codes#
Список кодов статусов (через пробел), игнорируемых при проверке подписи.
Может быть указан несколько раз.
Полный список кодов представлен на странице GitHub.
- --keyring <KEYRING>#
Хранилище ключей, используемое при проверке подписи.
- --offline#
Локальная проверка коллекции без подключения к серверу.
- --required-valid-signature-count <REQUIRED_VALID_SIGNATURE_COUNT>#
Задание количества подписей, необходимого для подтверждения подлинности коллекции.
Возможные значения:
Положительное число – минимально необходимое количество подписей. Если число подписей меньше заданного значения, проверка завершится с ошибкой.
all– требует, чтобы все доступные подписи для проверки подлинности коллекции были корректными. Если хотя бы одна подпись недействительна, проверка завершится с ошибкой.+all– требует, чтобы хотя бы одна подпись для проверки подлинности коллекции была корректной. Если хотя бы одна подпись корректна, проверка подлинности завершится успешно.
- --signature#
Дополнительный источник подписи для верификации
MANIFEST.json.Может быть указан несколько раз.
- --timeout <TIMEOUT>#
Время ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибок проверки сертификатов TLS.
- -i, --ignore-errors#
Игнорирование ошибок и продолжение проверки следующих коллекций.
- -p, --collections-path#
Каталоги для поиска коллекций.
Пути разделяются знаком
:.Может быть указан несколько раз.
- -r <REQUIREMENTS>, --requirements-file <REQUIREMENTS>#
Путь к файлу формата YAML со списком коллекций для проверки.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
Примеры использования действий с коллекциями:
ansible-galaxy collection init mynamespace.mycollection
ansible-galaxy collection install ansible.posix
ansible-galaxy collection publish mycollection.tar.gz
NO_PUBKEY и FAILURE:#ansible-galaxy collection verify --ignore-signature-status-codes NO_PUBKEY FAILURE
Действия с ролями#
- role init#
Создание структуры новой роли Ansible.
Доступные аргументы:
- --init-path <INIT_PATH>#
Путь к каталогу, в котором будет создана роль.
Значение по умолчанию: текущий каталог.
- --offline#
Отключение запроса API Galaxy при создании ролей.
- --role-skeleton <ROLE_SKELETON>#
Путь к шаблону роли.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- --type <ROLE_TYPE>#
Альтернативный тип роли.
Возможные значения:
container;apb;network.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -e, --extra-vars#
Передача дополнительных переменных в формате
key=value, YAML или JSON.Может быть указан несколько раз.
- -f, --force#
Перезапись существующей роли.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role remove#
Удаление указанных ролей с локального устройства.
Доступные аргументы:
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -p, --roles-path#
Путь к каталогу с ролями.
Значение по умолчанию:
{{ ANSIBLE_HOME ~ “/roles:/usr/share/ansible/roles:/etc/ansible/roles” }}.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role delete#
Удаление роль из Ansible Galaxy.
Доступные аргументы:
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role list#
Вывод списка установленных ролей.
Доступные аргументы:
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -p, --roles-path#
Путь к каталогу с ролями.
Значение по умолчанию:
{{ ANSIBLE_HOME ~ “/roles:/usr/share/ansible/roles:/etc/ansible/roles” }}.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role search#
Поиск роли в Ansible Galaxy.
Доступные аргументы:
- --author <AUTHOR>#
Фильтрация по имени автора.
- --galaxy-tags <TAGS>#
Фильтрация по тегам.
- --platforms <PLATFORMS>#
Фильтрация по платформам.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role import#
Импорт роли в Ansible Galaxy.
Доступные аргументы:
- --branch <REFERENCE>#
Ветка для импорта.
Значение по умолчанию: основная ветка репозитория.
- --no-wait#
Отключение ожидания завершения импорта.
- --role-name <ROLE_NAME>#
Название роли, если оно отличается от названия репозитория.
- --status#
Проверка статуса последнего запроса импорта.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role setup#
Настройка интеграции GitHub или Travis с Ansible Galaxy.
Доступные аргументы:
- --list#
Вывод списка текущих интеграций.
- --remove <REMOVE_ID>#
Удаление интеграции с указанным идентификатором.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -p, --roles-path#
Путь к каталогу с ролями.
Значение по умолчанию:
{{ ANSIBLE_HOME ~ “/roles:/usr/share/ansible/roles:/etc/ansible/roles” }}.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role info#
Вывод информации об установленной роли.
Доступные аргументы:
- --offline#
Отключение запроса API Galaxy.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -p, --roles-path#
Путь к каталогу с ролями.
Значение по умолчанию:
{{ ANSIBLE_HOME ~ “/roles:/usr/share/ansible/roles:/etc/ansible/roles” }}.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
- role install#
Установка ролей.
Доступные аргументы:
- --force-with-deps#
Принудительная переустановка роли и ее зависимостей.
- --timeout <TIMEOUT>#
Таймаут ожидания ответа от сервера (в секундах).
Значение по умолчанию:
60.
- --token <API_KEY>, --api-key <API_KEY>#
Токен доступа к Ansible Galaxy API.
- -c, --ignore-certs#
Игнорирование ошибки проверки сертификатов TLS.
- -f, --force#
Перезапись существующей роли.
- -g, --keep-scm-meta#
Сохранение метаданных системы управления версиями при установке.
- -i, --ignore-errors#
Игнорирование ошибок и продолжение установки следующих ролей.
- -n, --no-deps#
Отключение загрузки зависимостей ролей.
- -p, --roles-path#
Путь к каталогу с ролями.
Значение по умолчанию:
{{ ANSIBLE_HOME ~ “/roles:/usr/share/ansible/roles:/etc/ansible/roles” }}.
- -r <REQUIREMENTS>, --role-file <REQUIREMENTS>#
Путь к файлу со списком ролей для установки.
- -s <API_SERVER>, --server <API_SERVER>#
URL реестра коллекций.
Примеры использования действий с ролями:
ansible-galaxy role init myrole --init-path /path/to/roles
ansible-galaxy role install geerlingguy.nginx
ansible-galaxy role remove geerlingguy.nginx geerlingguy.mysql
ansible-galaxy role delete mynamespace.myrole --token MY_API_KEY
ansible-galaxy role search --author geerlingguy --galaxy-tags webserver
ansible-galaxy role import mynamespace myrole --token MY_API_KEY