Проверка коллекций
Проверка коллекций с помощью ansible-galaxy
После установки вы можете проверить, что содержимое установленной коллекции соответствует содержимому коллекции на сервере. Эта функция предполагает, что коллекция установлена в одном из настроенных путей коллекций и что коллекция существует на одном из настроенных серверов galaxy.
ansible-galaxy collection verify my_namespace.my_collection
Вывод команды ansible-galaxy collection verify будет пустым, если проверка пройдёт успешно. Если коллекция была изменена, изменённые файлы будут перечислены под именем коллекции.
ansible-galaxy collection verify my_namespace.my_collection
Collection my_namespace.my_collection contains modified content in the following files:
my_namespace.my_collection
plugins/inventory/my_inventory.py
plugins/modules/my_module.py
Вы можете использовать флаг -vvv для отображения дополнительной информации, такой как версия и путь установленной коллекции, URL удалённой коллекции, используемой для проверки, и вывод успешной проверки.
ansible-galaxy collection verify my_namespace.my_collection -vvv ... Verifying 'my_namespace.my_collection:1.0.0'. Installed collection found at '/path/to/ansible_collections/my_namespace/my_collection/' Remote collection found at 'https://galaxy.ansible.com/download/my_namespace-my_collection-1.0.0.tar.gz' Successfully verified that checksums for 'my_namespace.my_collection:1.0.0' match the remote collection
Если у вас установлена предварительная версия или не последняя версия коллекции, вы должны указать конкретную версию для проверки. Если версия опущена, установленная коллекция проверяется по отношению к последней версии, доступной на сервере.
ansible-galaxy collection verify my_namespace.my_collection:1.0.0
В дополнение к формату namespace.collection_name:version вы можете указать коллекции для проверки в файле requirements.yml. Зависимости, указанные в requirements.yml, не включаются в процесс verify и должны быть проверены отдельно.
ansible-galaxy collection verify -r requirements.yml
Проверка по файлам tar.gz не поддерживается. Если ваш requirements.yml содержит пути к файлам tar или URL для установки, вы можете использовать флаг --ignore-errors для обеспечения обработки всех коллекций, использующих формат namespace.name в файле.
Проверка подписанных коллекций
Если коллекция была подписана сервером дистрибуции, сервер предоставит ASCII-бронированные, отдельные подписи для проверки подлинности MANIFEST.json перед использованием его для проверки содержимого коллекции. Этот параметр недоступен на всех серверах дистрибуции. Обратитесь к разделу о распространении коллекций для просмотра таблицы серверов, поддерживающих подпись коллекций. Обратитесь к установке коллекций с проверкой подписи для получения информации о проверке подписанной коллекции при её установке.
Для проверки установленной подписанной коллекции:
ansible-galaxy collection verify my_namespace.my_collection --keyring ~/.ansible/pubring.kbx
Используйте опцию --signature для проверки имени(имён) коллекции, предоставленного в командной строке, с дополнительной подписью. Этот параметр можно использовать несколько раз для предоставления нескольких подписей.
ansible-galaxy collection verify my_namespace.my_collection --signature https://examplehost.com/detached_signature.asc --signature file:///path/to/local/detached_signature.asc --keyring ~/.ansible/pubring.kbx
По желанию, вы можете проверить подпись коллекции с помощью файла requirements.yml.
ansible-galaxy collection verify -r requirements.yml --keyring ~/.ansible/pubring.kbx
При установке коллекции с сервера дистрибуции, подписи, предоставляемые сервером для проверки подлинности коллекции, сохраняются вместе с установленным коллекциями. Эти данные используются для проверки внутренней непротиворечивости коллекции без повторного запроса к серверу дистрибуции, когда используется опция --offline.
ansible-galaxy collection verify my_namespace.my_collection --offline --keyring ~/.ansible/pubring.kbx
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections_guide/collections_verifying.html