Руководство по переносу Ansible 8
- Плейбук
- Командная строка
- Устаревшие возможности
- Плагины
- Перенос пользовательских скриптов
- Сетевое взаимодействие
Ansible 8 основан на Ansible-core 2.15.
Рекомендуем прочитать эту страницу вместе с списком изменений Ansible 8, чтобы понять, какие обновления вам, возможно, потребуется выполнить.
Плейбук
-
Условные выражения — из-за мер по устранению проблемы безопасности CVE-2023-5764 в ansible-core 2.15.7 условные выражения со встроенными блоками шаблонов могут завершаться ошибкой с сообщением «
Conditional is marked as unsafe, and cannot be evaluated.», если встроенный шаблон обращается к данным из ненадёжных источников, например к результатам модулей или переменным, помеченным как!unsafe. Условные выражения со встроенными шаблонами могут стать источником вредоносной инъекции шаблонов при обращении к ненадёжным данным; почти всегда их можно переписать без встроенных шаблонов. Ключевые слова условий задач плейбука, такие какwhenиuntil, уже давно выводят предупреждения, не рекомендующие использовать встроенные шаблоны в условиях; теперь это предупреждение распространяется и на условия, не относящиеся к задачам, например на действиеassert.- name: task with a module result (always untrusted by Ansible) shell: echo "hi mom" register: untrusted_result # don't do it this way... # - name: insecure conditional with embedded template consulting untrusted data # assert: # that: '"hi mom" is in {{ untrusted_result.stdout }}' - name: securely access untrusted values directly as Jinja variables instead assert: that: '"hi mom" is in untrusted_result.stdout'
Командная строка
- Код возврата
ansible-galaxy searchтеперь равен 0 вместо 1, а stdout пуст, если результаты отсутствуют, что соответствует поведению других командansible-galaxy.
Устаревшие возможности
-
Передача списка словарей в
vars:считается устаревшей; вместо этого следует передавать словарь.Вместо:
vars: - var1: foo - var2: bar
Используйте:
vars: var1: foo var2: bar
Модули
Примечательных изменений нет
Удалённые модули
Следующие модули больше не существуют:
- Примечательных изменений нет
Уведомления об устаревании
Примечательных изменений нет
Важные изменения модулей
Примечательных изменений нет
Плагины
Примечательных изменений нет
Перенос пользовательских скриптов
Примечательных изменений нет
Сетевое взаимодействие
Примечательных изменений нет
Руководство по переносу для v8.7.0
Несовместимые изменения
Ansible-core
- assert — вложенная обработка шаблонов может привести к невозможности вычислить условное выражение. Дополнительные сведения см. в руководстве по переносу.
Руководство по переносу для v8.6.0
Добавленные коллекции
- ibm.storage_virtualize (версия 2.1.0)
Основные изменения
community.mysql
- Коллекция community.mysql больше не поддерживает
ansible-core 2.12иansible-core 2.13. Хотя мы не принимаем активных мер для предотвращения их использования и не планируем вносить в модули несовместимый код, тестирование этих версий будет прекращено. Обе версии уже достигли или скоро достигнут конца жизненного цикла. Если вы всё ещё используете их, рассмотрите возможность как можно скорее перейти наlatest Ansible / ansible-core 2.15 or later(https://github.com/ansible-collections/community.mysql/pull/574). - mysql_role — значение аргумента
column_case_sensitiveпо умолчанию в community.mysql 4.0.0 будет изменено наtrue. Если в вашем плейбуке предполагалось, что столбец будет автоматически преобразован в верхний регистр для привилегий ролей, явно задайте для этого параметра значение false (https://github.com/ansible-collections/community.mysql/issues/578). - mysql_user — значение аргумента
column_case_sensitiveпо умолчанию в community.mysql 4.0.0 будет изменено наtrue. Если в вашем плейбуке предполагалось, что столбец будет автоматически преобразован в верхний регистр для привилегий пользователей, явно задайте для этого параметра значение false (https://github.com/ansible-collections/community.mysql/issues/577).
fortinet.fortios
- Добавлена поддержка новой версии FortiOS 7.4.1.
- Отформатировано содержимое файла changelog.yml.
- Версия Ansible обновлена с 2.9 до 2.14.
- В раздел Q&A добавлено решение проблемы, при которой Ansible всегда отправляет запросы GET/PUT как запросы POST.
- В файл requirement.txt добавлено требование sphinx_rtd_theme==1.3.0.
- В файле runtime.yml требуемая версия Ansible обновлена до 2.14.0.
Устаревшие возможности
- Коллекция
ibm.spectrum_virtualizeпереименована вibm.storage_virtualize. Пока обе коллекции включены в Ansible. В Ansible 10.0.0 содержимоеibm.spectrum_virtualizeбудет заменено устаревшими перенаправлениями на новую коллекцию, и со временем эти перенаправления будут удалены из Ansible. Обновите FQCN дляibm.spectrum_virtualize.
Руководство по переносу для v8.5.0
Устаревшие возможности
community.general
- В следующем основном выпуске community.general 8.0.0 будет прекращена поддержка ansible-core 2.11 и 2.12, жизненный цикл которых уже давно завершён. Это означает, что эта коллекция больше не поддерживает Python 2.6 на целевом узле. Отдельные компоненты могут по-прежнему работать с неподдерживаемыми версиями ansible-core, однако это может измениться в любой момент. Также обратите внимание: начиная с этого момента в каждом новом основном выпуске community.general мы будем прекращать поддержку всех версий ansible-core, жизненный цикл которых завершился более чем за несколько недель до даты основного выпуска (https://github.com/ansible-community/community-topics/discussions/271, https://github.com/ansible-collections/community.general/pull/7259).
- redfish_info, redfish_config, redfish_command — значение
10по умолчанию для параметраtimeoutсчитается устаревшим и в community.general 9.0.0 будет изменено на60(https://github.com/ansible-collections/community.general/pull/7295).
Руководство по переносу для v8.4.0
Основные изменения
fortinet.fortios
- Улучшена документация по добавлению примечаний и примеров в Q&A для модулей, использующих целое число в качестве mkey.
Устаревшие возможности
- Коллекция
community.azureофициально больше не сопровождается и помещена в архив. Поэтому она будет удалена из Ansible 10. В пакете community уже есть коллекция-преемникazure.azcollection, которая должна предоставлять те же функции (https://github.com/ansible-community/community-topics/issues/263). - Коллекция
hpe.nimbleсчитается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её сопровождение. Подробное описание процедуры см. в описании процесса удаления (https://github.com/ansible-community/community-topics/issues/254).
Ansible-core
- Фильтры vault и unfault — недокументированный параметр
vaultidсчитается устаревшим и будет удалён в ansible-core 2.20. Вместо него используйтеvault_id.
ansible.netcommon
- libssh — теперь указано, что параметры ssh_*_args будут удалены после 2026-01-01.
Руководство по переносу для v8.3.0
Добавленные коллекции
- telekom_mms.icinga_director (версия 1.34.1)
Основные изменения
fortinet.fortios
- Добавлен файл readthedocs.yaml.
- Обновлён раздел Q&A, посвящённый настройке многофакторной аутентификации FortiToken.
Устаревшие возможности
- Коллекция
t_systems_mms.icinga_directorпереименована вtelekom_mms.icinga_director. Пока обе коллекции включены в Ansible. В Ansible 9.0.0 содержимоеt_systems_mms.icinga_directorбудет заменено устаревшими перенаправлениями на новую коллекцию, и со временем эти перенаправления будут удалены из Ansible. Обновите FQCN дляt_systems_mms.icinga_director. - Коллекция netapp.azure считается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её сопровождение. Подробное описание процедуры см. в описании процесса удаления (https://github.com/ansible-community/community-topics/issues/234).
- Коллекция netapp.elementsw считается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её сопровождение. Подробное описание процедуры см. в описании процесса удаления (https://github.com/ansible-community/community-topics/issues/235).
- Коллекция netapp.um_info считается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её сопровождение. Подробное описание процедуры см. в описании процесса удаления (https://github.com/ansible-community/community-topics/issues/244).
- Коллекция ngine_io.vultr официально больше не сопровождается и помещена в архив. Поэтому она будет удалена из Ansible 9. В пакете community уже есть коллекция-преемник
vultr.cloud(использующая новую версию 2 API Vultr), которая предоставляет те же функции, но может иметь несовместимый синтаксис (https://github.com/ansible-community/community-topics/issues/257).
community.crypto
- get_certificate — значение
falseпо умолчанию для параметраasn1_base64считается устаревшим и в community.crypto 3.0.0 будет изменено наtrue(https://github.com/ansible-collections/community.crypto/pull/600).
community.general
- ejabberd_user — параметр
loggingобъявлен устаревшим; вместо него в выводе модуля будет предоставляться более подробная информация (https://github.com/ansible-collections/community.general/pull/7043).
community.postgresql
- postgresql_lang — модуль объявлен устаревшим и будет удалён в
community.postgresql 4.0.0. Вместо него используйте модульpostgresql_ext(https://github.com/ansible-collections/community.postgresql/issues/559).
Руководство по переносу для v8.2.0
Известные проблемы
Ansible-core
- ansible-test — известно, что удалённая система Fedora 37 иногда зависает во время загрузки. Поэтому её больше не тестируют регулярно. По возможности используйте вместо неё удалённую систему Fedora 38.
community.crypto
- В текстовом выводе ansible-doc для ansible-core до версии 2.15 разметка Ansible отображается в исходном виде. Если вам трудно разобраться в разметке документации, обновитесь до ansible-core 2.15 (или более новой версии) либо прочитайте документацию в формате HTML по адресу https://docs.ansible.com/ansible/devel/collections/community/crypto/.
community.hrobot
- В текстовом выводе ansible-doc для ansible-core до версии 2.15 разметка Ansible отображается в исходном виде. Если вам трудно разобраться в разметке документации, обновитесь до ansible-core 2.15 (или более новой версии) либо прочитайте документацию в формате HTML по адресу https://docs.ansible.com/ansible/devel/collections/community/hrobot/.
community.routeros
- В текстовом выводе ansible-doc для ansible-core до версии 2.15 разметка Ansible отображается в исходном виде. Если вам трудно разобраться в разметке документации, обновитесь до ansible-core 2.15 (или более новой версии) либо прочитайте документацию в формате HTML по адресу https://docs.ansible.com/ansible/devel/collections/community/routeros/.
community.sops
- В текстовом выводе ansible-doc для ansible-core до версии 2.15 разметка Ansible отображается в исходном виде. Если вам трудно разобраться в разметке документации, обновитесь до ansible-core 2.15 (или более новой версии) либо прочитайте документацию в формате HTML по адресу https://docs.ansible.com/ansible/devel/collections/community/sops/.
Несовместимые изменения
hetzner.hcloud
- Для полной совместимости теперь требуется hcloud-python 1.20.0.
Основные изменения
chocolatey.chocolatey
- win_chocolatey — добавлены параметры для указания контрольных сумм.
- win_chocolatey_facts — добавлен параметр filter / gather_subset.
community.vmware
- vmware_vasa — добавлен новый модуль для регистрации и отмены регистрации поставщика VASA.
- vmware_vasa_info — добавлен новый модуль для сбора сведений о существующих поставщиках VASA.
grafana.grafana
- Добавлена роль Grafana Server, автор — @gardar.
- Добавлены настраиваемые группы пользователей агента, автор — @NormanJS.
- Добавлена поддержка плагинов Grafana при локальной установке Grafana, автор — @ishanjainn.
- Обновлена служба для режима flow, автор — @bentonam.
Устаревшие возможности
- Коллекция
community.sapпереименована вcommunity.sap_libs. Пока обе коллекции включены в Ansible. В Ansible 9.0.0 содержимоеcommunity.sapбудет заменено устаревшими перенаправлениями на новую коллекцию, а сама коллекция будет полностью удалена из Ansible 10. Обновите FQCN дляcommunity.sap. - Устаревшая коллекция servicenow.servicenow была удалена из Ansible 7, но случайно снова добавлена в Ansible 8. Она будет повторно удалена из Ansible 9 (https://github.com/ansible-community/community-topics/issues/246).
community.general
- flowdock — модуль полностью зависит от конечных точек API, которые больше не отвечают. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6930).
- proxmox — устаревший флаг функции
proxmox_default_behaviorбудет удалён в community.general 10.0.0 (https://github.com/ansible-collections/community.general/pull/6836). - stackdriver — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6887).
- webfaction_app — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6909).
- webfaction_db — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6909).
- webfaction_domain — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6909).
- webfaction_mailbox — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6909).
- webfaction_site — модуль полностью зависит от несуществующих конечных точек API. Он будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6909).
junipernetworks.junos
-
junos_ospfv2— добавлено предупреждение об устаревании area_range. - Добавлено предупреждение об устаревании ключа junos_acl_interfaces в результатах сбора фактов Junos.
Руководство по переносу на v8.1.0
Известные проблемы
community.dns
- В текстовом выводе ansible-doc в ansible-core до версии 2.15 разметка Ansible будет отображаться в исходном виде. Если вам трудно разобраться в разметке документации, обновите ansible-core до версии 2.15 (или более новой) либо прочитайте документацию в формате HTML на странице https://docs.ansible.com/ansible/devel/collections/community/dns/.
community.docker
- В текстовом выводе ansible-doc в ansible-core до версии 2.15 разметка Ansible будет отображаться в исходном виде. Если вам трудно разобраться в разметке документации, обновите ansible-core до версии 2.15 (или более новой) либо прочитайте документацию в формате HTML на странице https://docs.ansible.com/ansible/devel/collections/community/docker/.
community.general
- В текстовом выводе ansible-doc в ansible-core до версии 2.15 разметка Ansible будет отображаться в исходном виде. Если вам трудно разобраться в разметке документации, обновите ansible-core до версии 2.15 (или более новой) либо прочитайте документацию в формате HTML на странице https://docs.ansible.com/ansible/devel/collections/community/general/ (https://github.com/ansible-collections/community.general/pull/6539).
dellemc.openmanage
- idrac_redfish_storage_contoller — проблема (256164): если для одного из атрибутов в предоставленном списке атрибутов конфигурации контроллера указано недопустимое значение, модуль не завершается с ошибкой.
- ome_device_network_services — проблема (212681): модуль не выводит корректное сообщение об ошибке, если для следующих параметров указаны неподдерживаемые значения: port_number, community_name, max_sessions, max_auth_retries и idle_timeout.
- ome_device_power_settings — проблема (212679): модуль выводит следующее сообщение, если значение параметра
power_capне входит в поддерживаемый диапазон от 0 до 32767:Unable to complete the request because PowerCap does not exist or is not applicable for the resource URI. - ome_smart_fabric_uplink — проблема (186024): несмотря на поддержку модуля в OpenManage Enterprise Modular, он не позволяет создавать несколько восходящих каналов с одинаковым именем. Если восходящий канал создан с именем уже существующего канала, существующий канал изменяется.
Несовместимые изменения
- Обратите внимание: несовместимое изменение, объявленное в журнале изменений dellemc.enterprise_sonic ниже, появилось в dellemc.enterprise_sonic 2.1.0 и было отменено в dellemc.enterprise_sonic 2.2.0, поэтому оно не входит в Ansible 8. По техническим причинам эта запись всё ещё отображается здесь.
dellemc.enterprise_sonic
- sonic_aaa — добавлен атрибут default_auth в argspec вместо удалённых атрибутов group и local. Это изменение позволяет задавать порядок аутентификации при входе. (https://github.com/ansible-collections/dellemc.enterprise_sonic/pull/195).
Основные изменения
cloudscale_ch.cloud
- Минимальная требуемая версия Ansible повышена до 2.13.0
fortinet.fortimanager
- Поддержка всех версий FortiManager 6.2, 6.4, 7.0, 7.2 и 7.4. Добавлено 139 новых модулей.
- Добавлена поддержка аутентификации на основе токенов.
fortinet.fortios
- Улучшена функция
no_logв некоторых модулях; - Улучшены документация и пример для
seq_numвfortios_router_static; - Улучшена документация для
member_pathво всех модулях; - Добавлена поддержка новых версий FOS.
Удалённые функции
community.ciscosmb
- Удалено тестирование для Python 2.6 и 2.7
- Удалено тестирование для Ansible 2.9
Устаревшие функции
- Коллекция gluster.gluster считается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её поддержку. Подробнее о том, как это происходит, см. в описании процесса удаления (https://github.com/ansible-community/community-topics/issues/225).
amazon.aws
- s3_object — поддержка передачи ключей объектов, начинающихся с
/, объявлена устаревшей и будет удалена в одном из выпусков после 2025-12-01 (https://github.com/ansible-collections/amazon.aws/pull/1549).
community.ciscosmb
- Поддержка Python 2.6 и 2.7
- Поддержка Ansible 2.9
community.general
- Вспомогательные средства модуля CmdRunner — форматтер
cmd_runner_fmt.as_default_type()объявлен устаревшим (https://github.com/ansible-collections/community.general/pull/6601). - Вспомогательные средства модуля MH VarsMixin —
VarsMixinи вспомогательные классы объявлены устаревшими в пользу обычного вспомогательного средства модуляvardict(https://github.com/ansible-collections/community.general/pull/6649). - cpanm — значение
compatibilityобъявлено устаревшим в качестве значения по умолчанию для параметраmode(https://github.com/ansible-collections/community.general/pull/6512). - Вспомогательные средства модуля redhat — модуль
module_utils.redhatобъявлен устаревшим, поскольку фактически не используется: классыRhsm,RhsmPoolиRhsmPoolsбудут удалены в community.general 9.0.0; классRegistrationBaseбудет удалён в community.general 10.0.0 вместе с модулемrhn_register, поскольку это единственный пользователь данного класса. Это означает, что весь модульmodule_utils.redhatбудет удалён в community.general 10.0.0, поэтому его импорт завершится ошибкой, даже если не использовать его компоненты (https://github.com/ansible-collections/community.general/pull/6663). - redhat_subscription — псевдоним
autosubscribeдля параметраauto_attachбыл объявлен устаревшим много лет назад, но только в документации. Теперь этот псевдоним официально объявлен устаревшим и будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/6646). - redhat_subscription — параметр
poolобъявлен устаревшим в пользу более точного и гибкого параметраpool_ids(https://github.com/ansible-collections/community.general/pull/6650). - rhsm_repository —
state=presentуже много лет работает не так, как ожидалось, и, похоже, это до сих пор никто не заметил; кроме того, «наличие» не является подходящим понятием для репозиториев подписок, которые можно только включить или отключить. Поэтому значенияpresentиabsentпараметраstateобъявлены устаревшими и будут удалены в community.general 10.0.0 (https://github.com/ansible-collections/community.general/pull/6673).
microsoft.ad
- Поддержка Server 2012 и Server 2012 R2 объявлена устаревшей. Срок поддержки этих версий ОС компанией Microsoft подходит к концу, и поддержка их использования в Ansible также скоро завершится.
purestorage.fusion
- fusion_api_client — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_array — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_az — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_hap — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_hap — параметры
nqn,wwns,host_password,host_user,target_password`and `target_userобъявлены устаревшими - fusion_hw — переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_info — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_info — подмножество ‘hosts’ объявлено устаревшим в пользу ‘host_access_policies’ и будет удалено в версии 2.0.0
- fusion_info — подмножество ‘interfaces’ объявлено устаревшим в пользу ‘network_interfaces’ и будет удалено в версии 2.0.0
- fusion_info — подмножество ‘zones’ объявлено устаревшим в пользу ‘availability_zones’ и будет удалено в версии 2.0.0
- fusion_ni — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_nig — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_pg — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_pp — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_ra — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_region — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_sc — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_se — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_se — параметр
endpoint_typeобъявлен устаревшим и будет удалён в версии 2.0.0 - fusion_ss — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_tenant — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_tn — переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_ts — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
- fusion_volume — параметры ‘app_id’ и ‘key_file’ объявлены устаревшими в пользу параметров ‘issuer_id’ и ‘private_key_file’ и будут удалены в версии 2.0.0; переменные среды FUSION_APP_ID и FUSION_HOST объявлены устаревшими в пользу FUSION_ISSUER_ID и FUSION_HOST и будут удалены в версии 2.0.0
Руководство по переносу для v8.0.0
Добавленные коллекции
- dellemc.powerflex (версия 1.6.0)
- dellemc.unity (версия 1.6.0)
- grafana.grafana (версия 2.0.0)
- microsoft.ad (версия 1.1.0)
- servicenow.servicenow (версия 1.0.6)
Известные проблемы
Ansible-core
- ansible-test — для некоторых сочетаний узла-контейнера и контейнера может потребоваться дополнительная настройка. Дополнительные сведения доступны в документации по тестированию.
- ansible-test — пользовательские контейнеры с инструкциями
VOLUMEмогут не запускаться, хотя раньше запускались без проблем. Чтобы устранить проблему, удалите инструкцииVOLUME. Для контейнеров с этой проблемойansible-testвыдаст предупреждение. - ansible-test — системы с проблемами сети Podman могут не запускать контейнеры, хотя раньше об этой проблеме не сообщалось. Устраните проблемы сети, чтобы продолжить использовать
ansible-testс Podman. - ansible-test — модульные тесты коллекций не поддерживают переписывание утверждений
pytestв Python 2.7. - ansible-test — для использования Docker в системах с SELinux может потребоваться переключить SELinux в разрешительный режим. Podman должен работать с SELinux в принудительном режиме.
- dnf5 — менеджер пакетов DNF5 в настоящее время не предоставляет всех возможностей, необходимых для обеспечения функционального паритета между существующим модулем
dnfи новым модулемdnf5. В результате следующие параметрыdnf5фактически ничего не делают:cacheonly,enable_plugin,disable_pluginиlock_timeout.
cisco.meraki
- meraki_network — документация для
local_status_page_enabledиremote_status_page_enabledобновлена, поскольку эти параметры больше не работают.
community.docker
- Модули и плагины, использующие поставляемый вместе с коллекцией код Docker SDK for Python, в настоящее время не работают с requests 2.29.0 и/или urllib3 2.0.0. То же самое сейчас относится и к последней версии самого Docker SDK for Python (https://github.com/ansible-collections/community.docker/issues/611, https://github.com/ansible-collections/community.docker/pull/612).
- Плагин подключения docker_api — не работает с TCP-сокетами TLS! Это связано с невозможностью отправить предупреждение TLS
close_notify, не закрывая соединение с помощьюSSLSocketв Python (https://github.com/ansible-collections/community.docker/issues/605, https://github.com/ansible-collections/community.docker/pull/621). - docker_container_exec — не работает с TCP-сокетами TLS, если используется параметр
stdin! Это связано с невозможностью отправить предупреждение TLSclose_notify, не закрывая соединение с помощьюSSLSocketв Python (https://github.com/ansible-collections/community.docker/issues/605, https://github.com/ansible-collections/community.docker/pull/621).
community.routeros
- api_modify — если ограничения для записей в
queue treeзаданы в удобочитаемом виде, например25M, конфигурация будет правильно установлена в ROS, но при каждом запуске модуль будет указывать, что элемент изменен, даже если изменений не было. Это связано с тем, что API ROS возвращает число в байтах, например25000000(что не соответствует поведению CLI). Чтобы избежать этого, ограничения необходимо задавать в байтах (в CLI ROS они по-прежнему будут отображаться в удобочитаемом виде) (https://github.com/ansible-collections/community.routeros/pull/131). - api_modify, api_info — пути
routing ospf area,routing ospf area range,routing ospf instance,routing ospf interface-templateреализованы для ROS6 не полностью из-за значительных изменений между ROS6 и ROS7 (https://github.com/ansible-collections/community.routeros/pull/131).
dellemc.openmanage
- idrac_firmware — проблема (249879): обновление прошивки серверов на базе iDRAC9 завершается с ошибкой при использовании SOCKS-прокси с аутентификацией.
- idrac_os_deployment — проблема (260496): для хранения пользовательского ISO в destination_path при установке ОС поддерживаются только общие ресурсы NFS и CIFS; HTTP/HTTPS/FTP не поддерживаются.
- idrac_redfish_storage_contoller — проблема (256164): если для одного из атрибутов в указанном списке атрибутов конфигурации контроллера задано неверное значение, этот модуль не завершает работу с ошибкой.
- idrac_user — проблема (192043): модуль может завершиться с ошибкой и сообщением
Unable to perform the import or export operation because there are pending attribute changes or a configuration job is in progress. Дождитесь завершения задания и запустите задачу еще раз. - idrac_user — проблема (192043): модуль может завершиться с ошибкой и сообщением
unable to perform the import or export operation because there are pending attribute changes or a configuration job is in progress. Дождитесь завершения задания и запустите задачу еще раз. - ome_application_alerts_syslog — проблема (215374): модуль не выдает корректное сообщение об ошибке, если длина destination_address превышает 255 символов.
- ome_device_network_services — проблема (212681): модуль не выдает корректное сообщение об ошибке, если для следующих параметров указаны неподдерживаемые значения: port_number, community_name, max_sessions, max_auth_retries и idle_timeout.
- ome_device_network_services — проблема (212681): модуль не выдает корректное сообщение об ошибке, если для параметров port_number, community_name, max_sessions, max_auth_retries и idle_timeout указаны неподдерживаемые значения.
- ome_device_power_settings — проблема (212679): если значение параметра
power_capвыходит за поддерживаемый диапазон от 0 до 32767, модуль выводит следующее сообщение:Unable to complete the request because PowerCap does not exist or is not applicable for the resource URI. - ome_inventory — проблема (256257): для группы
Modular Systemи соответствующих дочерних групп получены не все узлы. - ome_inventory — проблема (256589): для группы
Custom Groupsи соответствующих дочерних групп получены не все узлы. - ome_inventory — проблема (256593): для группы
PLUGIN GROUPSи соответствующих дочерних групп получены не все узлы. - ome_smart_fabric_uplink — проблема (186024): несмотря на поддержку модулем OpenManage Enterprise Modular, он не позволяет создавать несколько восходящих каналов с одинаковым именем. Если восходящий канал создается с именем уже существующего, изменяется существующий восходящий канал.
- ome_smart_fabric_uplink — проблема (186024): модуль не позволяет создавать несколько восходящих каналов с одинаковым именем, хотя OpenManage Enterprise Modular поддерживает такую возможность. Если восходящий канал создается с именем уже существующего, изменяется существующий восходящий канал.
Несовместимые изменения
Ansible-core
- ansible-doc — плагины в коллекциях, имена которых начинаются с
_, больше не считаются устаревшими (https://github.com/ansible/ansible/pull/79362). - ansible-test — интеграционные тесты, зависящие от определенных разрешений на файлы при запуске в управляемой ansible-test среде узла, могут потребовать изменений. Тесты, которым нужны разрешения, отличные от
755или644, возможно, потребуется обновить, чтобы необходимые разрешения устанавливались в ходе тестирования. - ansible-test — тестовый плагин
vcenterтеперь по умолчанию использует предоставленную пользователем статическую конфигурацию вместо симулятораgovcsimдля коллекций. Чтобы использовать симулятор, задайте для переменной средыANSIBLE_VCSIM_CONTAINERзначениеgovcsim. Обратите внимание: симулятор объявлен устаревшим и будет удален в одном из следующих выпусков. - ansible-test sanity — ранее плагины и модули в коллекциях, имена которых начинались с
_, считались устаревшими, даже если вmeta/runtime.ymlони не были помечены как устаревшие. Теперь это не так (https://github.com/ansible/ansible/pull/79362). - ansible-test validate-modules — код ошибки
missing-python-docдля проверки модулей удален; для отсутствующей документации модуля PowerShell теперь используетсяmissing-documentation.
amazon.aws
- Коллекция amazon.aws прекратила поддержку
botocore<1.25.0иboto3<1.22.0. Большинство модулей продолжат работать со старыми версиями AWS SDK, однако совместимость со старыми версиями SDK не гарантируется и не будет проверяться. При использовании старых версий SDK Ansible выдаст предупреждение (https://github.com/ansible-collections/amazon.aws/pull/1342). - amazon.aws — код совместимости с Python < 3.6 удален (https://github.com/ansible-collections/amazon.aws/pull/1257).
- ec2_eip — ранее объявленный устаревшим псевдоним
instance_idпараметраdevice_idудален. Вместо него используйте имя параметраdevice_id(https://github.com/ansible-collections/amazon.aws/issues/1176). - ec2_instance — значение по умолчанию для
instance_typeудалено. При запуске новых экземпляров необходимо указать как минимум один из параметровinstance_typeилиlaunch_template(https://github.com/ansible-collections/amazon.aws/pull/1315). - ec2_vpc_dhcp_options — возвращаемое значение
new_optionsобъявлено устаревшим после переименования вdhcp_config. Используйте возвращаемые значенияdhcp_configилиdhcp_options(https://github.com/ansible-collections/amazon.aws/pull/1327). - ec2_vpc_endpoint — параметр
policy_fileудален. Вместо него можно использовать I(policy) с поиском файла (https://github.com/ansible-collections/amazon.aws/issues/1178). - ec2_vpc_net — возвращаемое значение
classic_link_enabledудалено. AWS прекратила поддержку сетей EC2 Classic (https://github.com/ansible-collections/amazon.aws/pull/1374). - ec2_vpc_net_info — возвращаемое значение
classic_link_dns_statusудалено. AWS прекратила поддержку сетей EC2 Classic (https://github.com/ansible-collections/amazon.aws/pull/1374). - ec2_vpc_net_info — возвращаемое значение
classic_link_enabledудалено. AWS прекратила поддержку сетей EC2 Classic (https://github.com/ansible-collections/amazon.aws/pull/1374). - module_utils.cloud — ранее объявленный устаревшим элемент
CloudRetry.backoffудален. Вместо него используйтеCloudRetry.exponential_backoffилиCloudRetry.jittered_backoff(https://github.com/ansible-collections/amazon.aws/issues/1110).
ansible.netcommon
- NetworkConnectionBase теперь наследуется от PersistentConnectionBase в ansible.utils. В результате минимальная версия ansible.utils повышена до 2.7.0.
- NetworkTemplate больше нельзя импортировать из ansible_collections.ansible.netcommon.plugins.module_utils.network.common; теперь его следует искать по правильному пути ansible_collections.ansible.netcommon.plugins.module_utils.network.common.rm_base.network_template
- ResourceModule больше нельзя импортировать из ansible_collections.ansible.netcommon.plugins.module_utils.network.common; теперь его следует искать по правильному пути ansible_collections.ansible.netcommon.plugins.module_utils.network.common.rm_base.resource_module
- VALID_MASKS, is_masklen, is_netmask, to_bits, to_ipv6_network, to_masklen, to_netmask и to_subnet больше нельзя импортировать из ansible_collections.ansible.netcommon.plugins.module_utils.network.common.utils; теперь их следует искать по правильному пути ansible.module_utils.common.network
community.aws
- Коллекция community.aws прекратила поддержку
botocore<1.25.0иboto3<1.22.0. Большинство модулей продолжат работать со старыми версиями AWS SDK, однако совместимость со старыми версиями SDK не гарантируется и не будет проверяться. При использовании старых версий SDK Ansible выдаст предупреждение (https://github.com/ansible-collections/community.aws/pull/1743). - aws_ssm — плагин AWS SSM ошибочно добавлял
sudoперед большинством команд. Это было неправильным поведением, и оно устранено. Чтобы выполнять команды от имени определенного пользователя, включая пользователяroot, следует использовать директивыbecomeиbecome_user. Дополнительные сведения см. в документации Ansible (https://github.com/ansible-collections/community.aws/issues/853). - codebuild_project — параметр
tagsтеперь принимает словарь с тегами, а не данные в формате boto3 (https://github.com/ansible-collections/community.aws/pull/1643).
community.general
- Если вы используете эту коллекцию не в составе Ansible, а установили (и/или обновили) community.general вручную, убедитесь, что также установили
community.sap_libs, если используете какие-либо модулиsapcar_extract,sap_task_list_executeиhana_query. Без установленной коллекции перенаправления для этих модулей не работают. - Утилиты модулей ModuleHelper — если модуль задает выходные переменные с именами
msg,exception,output,varsилиchanged, к этим именам будет добавлен префикс_(символ подчеркивания), только если они конфликтуют с выходными переменными, созданными самим ModuleHelper; такое происходит только при обработке исключений. Обратите внимание: это несовместимое изменение не требует нового основного выпуска, поскольку до этого выпуска добавить такие переменные в вывод было невозможно из-за ошибки (https://github.com/ansible-collections/community.general/pull/5765). - gconftool2 — исправлена обработка
gconftool-2, когдаkeyне существует: для возвращаемых значенийvalueиprevious_valueтеперь возвращаетсяnullвместо пустой строки (https://github.com/ansible-collections/community.general/issues/6028). - gitlab_runner — значение по умолчанию для
access_level_on_creationизменено сfalseнаtrue(https://github.com/ansible-collections/community.general/pull/6428). - ldap_search — все строковые значения преобразуются в UTF-8 (https://github.com/ansible-collections/community.general/issues/5704, https://github.com/ansible-collections/community.general/pull/6473).
- nmcli — значение параметра
hairpinпо умолчанию изменено сtrueнаfalse(https://github.com/ansible-collections/community.general/pull/6428). - proxmox — значение параметра
unprivilegedпо умолчанию изменено сfalseнаtrue(https://github.com/ansible-collections/community.general/pull/6428).
community.hashi_vault
- Поддержка
ansible-core2.11 и 2.12 удалена (https://github.com/ansible-collections/community.hashi_vault/issues/340). - Минимальная версия
hvacдляcommunity.hashi_vaultтеперь составляет1.1.0(https://github.com/ansible-collections/community.hashi_vault/issues/324). - Поиск hashi_vault — повторяющиеся записи параметров в строке term теперь вызывают исключение вместо предупреждения (https://github.com/ansible-collections/community.hashi_vault/issues/356).
community.zabbix
- роль agent — прекращена поддержка операционных систем Darwin, Amazon, Fedora, XCP-ng, Suse, Mint и Sangoma
- роль agent — прекращена поддержка zabbix_create_host; вместо него используется zabbix_agent_host_state
- роль agent — прекращена поддержка zabbix_create_hostgroup; вместо него используется zabbix_agent_hostgroups_state
- роль agent — прекращена поддержка zabbix_http_password, zabbix_api_http_password, zabbix_api_pass и zabbix_api_login_pass; вместо них используется zabbix_api_login_pass
- роль agent — прекращена поддержка zabbix_http_user, zabbix_api_http_user, zabbix_api_user и zabbix_api_login_user; вместо них используется zabbix_api_login_user
- роль agent — прекращена поддержка zabbix_inventory_mode; вместо него используется zabbix_agent_inventory_mode
- роль agent — прекращена поддержка zabbix_link_templates, вместо него используется zabbix_agent_link_templates
- роль agent — прекращена поддержка zabbix_macros; вместо него используется zabbix_agent_macros
- роль agent — прекращена поддержка zabbix_proxy; вместо него используется zabbix_agent_proxy
- роль agent — прекращена поддержка zabbix_update_host; вместо него используется zabbix_agent_host_update
- все модули — прекращена поддержка версий Zabbix < 6.0
- все роли — прекращена поддержка переменной zabbix_version.
- все роли — прекращена поддержка всех версий Zabbix < 6.0.
- все роли — прекращена поддержка установки из epel и нестандартных репозиториев
- прекращена поддержка zabbix-api для выполнения вызовов REST API к Zabbix
- роль proxy — прекращена поддержка zabbix_database_creation; вместо него используется zabbix_proxy_database_creation
- роль proxy — прекращена поддержка zabbix_database_sqlload; вместо него используется zabbix_proxy_database_sqlload
- роль proxy — прекращена поддержка zabbix_selinux; вместо него используется zabbix_proxy_selinux
- роль server — прекращена поддержка zabbix_server_mysql_login_password; вместо него используется zabbix_server_dbpassword
- роль server — прекращена поддержка zabbix_server_mysql_login_user; вместо него используется zabbix_server_dbuser
- прекращена поддержка Ansible < 2.12
- прекращена поддержка Python < 3.9
- zabbix_action — параметр message переименован в op_message
- модуль zabbix_group_facts удален в пользу zabbix_group_info
- модуль zabbix_host_facts удален в пользу zabbix_host_info
hetzner.hcloud
- плагин инвентаризации — теперь требуется Python версии 3.5 или выше.
lowlydba.sqlserver
- Минимальная версия DBATools обновлена до v2.0.0 для обеспечения совместимости с pwsh 7.3+. В DBATools также могут быть несовместимые изменения поведения; см. https://blog.netnerds.net/2023/03/whats-new-dbatools-2.0/. (https://github.com/lowlydba/lowlydba.sqlserver/pull/181)
Основные изменения
Ansible-core
- ansible-test — теперь поддерживается Docker Desktop в WSL2 (требуется дополнительная настройка).
- ansible-test — теперь Docker и Podman поддерживаются на узлах с унифицированной иерархией cgroup v2. Ранее поддерживались только cgroup v1 и гибридная cgroup v2.
- ansible-test — теперь Podman работает на узлах-контейнерах без systemd. Ранее работали только некоторые контейнеры, а для других требовался Podman с правами root или без них, но они не могли работать в обоих режимах. Некоторые контейнеры не работали вовсе.
- ansible-test — теперь поддерживается Podman в WSL2.
- ansible-test — если на узле-контейнере требуется дополнительная настройка cgroup, она будет обнаружена автоматически. В сообщении об ошибке будут приведены инструкции по настройке узла.
ansible.windows
- Минимальная поддерживаемая этой коллекцией версия Ansible установлена на уровне Ansible 2.12
chocolatey.chocolatey
- win_chocolatey — пользователи могут выбирать версии TLS, используемые для начальной настройки установки Chocolatey.
cisco.iosxr
- iosxr_l3_interfaces — исправлена проблема с форматированием адреса IPv4. (https://github.com/ansible-collections/cisco.iosxr/issues/311).
cisco.meraki
- meraki_mr_l7_firewall — новый модуль
- meraki_webhook_payload_template — новый модуль
community.hrobot
- firewall — Hetzner добавила поддержку правил исходящего трафика для брандмауэра. К сожалению, из-за этого изменения старые версии модуля брандмауэра будут всегда задавать пустой список правил исходящего трафика, запрещая серверу отправлять пакеты (https://github.com/ansible-collections/community.hrobot/issues/75, https://github.com/ansible-collections/community.hrobot/pull/76).
community.postgresql
- postgresql_privs — аргумент
passwordобъявлен устаревшим и будет удален в community.postgresql 4.0.0; вместо него используйте аргументlogin_password(https://github.com/ansible-collections/community.postgresql/issues/406).
community.vmware
- В документации и примерах для логических значений используйте true/false (в нижнем регистре) (https://github.com/ansible-collections/community.vmware/issues/1660).
community.zabbix
- Все модули отказываются от zabbix-api и переходят на плагин httpapi из ansible.netcommon. Для обратной совместимости поддержка zabbix-api сохранится до следующего основного выпуска. Дополнительные сведения о переходе см. в файле README.md.
- Роли zabbix_agent и zabbix_proxy отказываются от zabbix-api и переходят на плагин httpapi из ansible.netcommon. Для обратной совместимости поддержка zabbix-api сохранится до следующего основного выпуска. Дополнительные сведения о переходе см. в файле README.md.
containers.podman
- Добавлен новый плагин повышения привилегий — podman_unshare
- Модуль Podman generate systemd
dellemc.openmanage
- Ребрендинг: Dell EMC переименована в Dell.
- Добавлена поддержка адресов IPv6 для модулей iDRAC, зависящих от OMSDK.
- idrac_firmware — в модуль добавлена поддержка прокси.
- idrac_redfish_storage_controller — модуль дополнен возможностью настройки атрибутов контроллера и расширения емкости в режиме онлайн.
- idrac_server_config_profile — модуль дополнен поддержкой настроек прокси, буфера импорта, включения в экспорт и игнорирования предупреждений о сертификатах.
- idrac_user_info — модуль позволяет получать сведения о локальных пользователях iDRAC.
- ome_domian_user_groups — модуль позволяет импортировать группы каталога LDAP.
- ome_inventory — плагин позволяет создавать инвентаризацию из группы в OpenManage Enterprise.
- ome_inventory — плагин дополнен поддержкой получения инвентаризации системных групп и групп плагинов OpenManage Enterprise.
- ome_profile_info — модуль позволяет получать профили с атрибутами в OpenManage Enterprise или OpenManage Enterprise Modular.
- ome_smart_fabric_info — модуль получает список интеллектуальных фабрик в инвентаризации OpenManage Enterprise Modular.
- ome_smart_fabric_uplink_info — модуль получает сведения о восходящем канале фабрики в OpenManage Enterprise Modular.
- ome_template_network_vlan_info — модуль позволяет получать сетевую конфигурацию шаблона в OpenManage Enterprise или OpenManage Enterprise Modular.
fortinet.fortios
- Для каждого модуля добавлены аннотации операций с элементами.
- Добавлена поддержка FortiOS v7.0.6, v7.0.7, v7.0.8, v7.2.1 и v7.2.2.
- Обновлен
fortios.pyдля повышения производительности; - добавлена поддержка временного ключа сеанса и баннеров до и после входа;
- обновлены примеры использования операций с элементами в разделе вопросов и ответов.
infoblox.nios_modules
- Добавлена функция кандидата на роль Grid Master #152
- Добавлено назначение участника для сети и диапазонов #152
- Добавлен модуль NIOS Range с возможностями создания, обновления и удаления #152
- Исправлена проблема, из-за которой не удавалось обновлять/удалять EA с помощью плагина Ansible #180
- Исправлено статическое и динамическое выделение адреса IPv4 для записи A #182
- Исправлено обновление имени узла участника NIOS #176
- Версия WAPI по умолчанию обновлена до 2.9 #176
junipernetworks.junos
- собранный ключ переименован с junos_acls на acls
kubernetes.core
- Класс K8sAnsibleMixin реорганизован и перенесен в module_utils/k8s/ (https://github.com/ansible-collections/kubernetes.core/pull/481).
purestorage.fusion
- Обновление свойств ресурсов приведено в соответствие с базовым Python SDK
- fusion_volume — модуль исправлен и реорганизован, аргументы изменены
Удаленные коллекции
- dellemc.os10 (ранее включалась версия: 1.1.1)
- dellemc.os6 (ранее включалась версия: 1.0.7)
- dellemc.os9 (ранее включалась версия: 1.0.4)
- mellanox.onyx (ранее включалась версия: 1.0.0)
Удалённые функции
-
dellemc.os10считалась неподдерживаемой и была удалена из Ansible 8 в соответствии с процессом удаления из Ansible. Пользователи по-прежнему могут установить эту коллекцию с помощьюansible-galaxy collection install dellemc.os10. -
dellemc.os6считалась неподдерживаемой и была удалена из Ansible 8 в соответствии с процессом удаления из Ansible. Пользователи по-прежнему могут установить эту коллекцию с помощьюansible-galaxy collection install dellemc.os6. -
dellemc.os9считалась неподдерживаемой и была удалена из Ansible 8 в соответствии с процессом удаления из Ansible. Пользователи по-прежнему могут установить эту коллекцию с помощьюansible-galaxy collection install dellemc.os9. -
mellanox.onyxсчиталась неподдерживаемой и была удалена из Ansible 8 в соответствии с процессом удаления из Ansible. Пользователи по-прежнему могут установить эту коллекцию с помощьюansible-galaxy collection install mellanox.onyx.
Ansible-core
- Удалена устаревшая переменная среды конфигурации
ANSIBLE_CALLBACK_WHITELIST; вместо неё используйтеANSIBLE_CALLBACKS_ENABLED. (https://github.com/ansible/ansible/issues/78821) - Удалена устаревшая переменная среды конфигурации
ANSIBLE_COW_WHITELIST; вместо неё используйтеANSIBLE_COW_ACCEPTLIST. (https://github.com/ansible/ansible/issues/78819) - Удалён устаревший параметр конфигурации
callback_whitelist; вместо него используйтеcallbacks_enabled. (https://github.com/ansible/ansible/issues/78822) - Удалён устаревший параметр конфигурации
cow_whitelist; вместо него используйтеcowsay_enabled_stencils. (https://github.com/ansible/ansible/issues/78820)
amazon.aws
- ec2_vpc_endpoint_info — удалена поддержка параметра
query. Теперь модульamazon.aws.ec2_vpc_endpoint_infoвыполняет запросы только к конечным точкам. Получить сведения о службах можно с помощью модуляamazon.aws.ec2_vpc_endpoint_service_info(https://github.com/ansible-collections/amazon.aws/pull/1308). - s3_object — удалена поддержка создания и удаления бакетов с помощью модуля
s3_object. Бакеты S3 можно создавать и удалять с помощью модуляamazon.aws.s3_bucket(https://github.com/ansible-collections/amazon.aws/issues/1112).
ansible.netcommon
- cli_parse — этот плагин был перенесён в ansible.utils в версии 1.0.0; перенаправление в эту коллекцию теперь удалено.
community.general
- Из этой коллекции удалены все модули
sap. Они перенесены в коллекцию community.sap_libs. Добавлены перенаправления. Затронуты следующие модули: - sapcar_extract - sap_task_list_execute - hana_query - Утилиты модулей cmd_runner — удалён псевдоним
fmtдляcmd_runner_fmt. Вместо него используйтеcmd_runner_fmt(https://github.com/ansible-collections/community.general/pull/6428). - newrelic_deployment — удалены параметры
appnameиenvironment. Они ничего не делали (https://github.com/ansible-collections/community.general/pull/6428). - puppet — удалён псевдоним
show-diffпараметраshow_diff. Вместо него используйтеshow_diff(https://github.com/ansible-collections/community.general/pull/6428). - xfconf — сбор фактов был объявлен устаревшим в community.general 3.0.0, однако три факта —
property,channelиvalue— по ошибке продолжали собираться. Это поведение удалено, иxfconfбольше не собирают никаких фактов (https://github.com/ansible-collections/community.general/pull/5502). - xfconf — сбор фактов был объявлен устаревшим в community.general 3.0.0, однако два факта —
previous_valueиtype— по ошибке продолжали собираться. Это поведение удалено, иxfconfбольше не собирают никаких фактов (https://github.com/ansible-collections/community.general/pull/5502).
community.zabbix
- Роль agent — удалена поддержка настройки брандмауэра
- Роль web — удалена установка Apache, Debian и PHP
Устаревшие функции
- Коллекция cisco.nso считается неподдерживаемой и будет удалена из Ansible 9, если до выхода Ansible 9 никто не возобновит её поддержку. Подробнее о порядке удаления см. здесь (https://github.com/ansible-community/community-topics/issues/155).
- Коллекция community.fortios считается неподдерживаемой и будет удалена из Ansible 9, если до выхода Ansible 9 никто не возобновит её поддержку. Подробнее о порядке удаления см. здесь (https://github.com/ansible-community/community-topics/issues/162).
- Коллекция community.google считается неподдерживаемой и будет удалена из Ansible 9, если до выхода Ansible 9 никто не возобновит её поддержку. Подробнее о порядке удаления см. здесь (https://github.com/ansible-community/community-topics/issues/160).
- Коллекция community.skydive считается неподдерживаемой и будет удалена из Ansible 9, если до выхода Ansible 9 никто не возобновит её поддержку. Подробнее о порядке удаления см. здесь (https://github.com/ansible-community/community-topics/issues/171).
- Коллекция netapp.aws считается неподдерживаемой и будет удалена из Ansible 10, если до выхода Ansible 10 никто не возобновит её поддержку. Подробнее о порядке удаления см. здесь (https://github.com/ansible-community/community-topics/issues/223).
Ansible-core
- Атрибут
ConnectionBase()._new_stdinобъявлен устаревшим, вместо него используйтеdisplay.prompt_until(msg). - ansible-test — тестовый плагин
foremanтеперь объявлен устаревшим. Он будет удалён в одном из будущих выпусков. - ansible-test — симулятор
govcsimв тестовом плагинеvcenterтеперь объявлен устаревшим. Он будет удалён в одном из будущих выпусков. Пользователям следует перейти на собственное тестовое окружение, задаваемое статическим файлом конфигурации. - password_hash — объявлено устаревшим использование passlib.hash.hashtype, если hashtype отсутствует в списке документированных вариантов.
- vars — указание списка словарей для
vars:объявлено устаревшим; вместо этого следует указывать словарь.
amazon.aws
- Коллекция amazon.aws — в соответствии с политиками поддержки Python в AWS SDK (https://aws.amazon.com/blogs/developer/python-support-policy-updates-for-aws-sdks-and-tools/) поддержку Python версий ниже 3.8 в этой коллекции планируется удалить в выпуске после 2024-12-01 (https://github.com/ansible-collections/amazon.aws/pull/1342).
- Коллекция amazon.aws — после объявления AWS SDK о прекращении поддержки Python версий ниже 3.7 (https://aws.amazon.com/blogs/developer/python-support-policy-updates-for-aws-sdks-and-tools/) поддержка Python версий ниже 3.7 в этой коллекции объявлена устаревшей и будет удалена в выпуске 7.0.0. (https://github.com/ansible-collections/amazon.aws/pull/1342).
- Модули поиска amazon.aws — псевдоним
boto3_profileдля параметраprofileобъявлен устаревшим; используйте вместо негоprofile(https://github.com/ansible-collections/amazon.aws/pull/1225). - docs_fragments — фрагмент документации
amazon.aws.aws_credentialsобъявлен устаревшим; используйте вместо негоamazon.aws.common.plugins(https://github.com/ansible-collections/amazon.aws/pull/1248). - docs_fragments — фрагмент документации
amazon.aws.aws_regionобъявлен устаревшим; используйте вместо негоamazon.aws.region.plugins(https://github.com/ansible-collections/amazon.aws/pull/1248). - docs_fragments — фрагмент документации
amazon.aws.awsобъявлен устаревшим; используйте вместо негоamazon.aws.common.modules(https://github.com/ansible-collections/amazon.aws/pull/1248). - docs_fragments — фрагмент документации
amazon.aws.ec2объявлен устаревшим; используйте вместо негоamazon.aws.region.modules(https://github.com/ansible-collections/amazon.aws/pull/1248). - module_utils.policy —
ansible_collections.amazon.aws.module_utils.policy.sort_json_policy_dictобъявлен устаревшим; рассмотрите возможность использования вместо негоansible_collections.amazon.aws.module_utils.poilcies.compare_policies(https://github.com/ansible-collections/amazon.aws/pull/1136). - s3_object — поддержка одновременной передачи
dualstackиendpoint_urlобъявлена устаревшей; параметрdualstackигнорируется, если переданendpoint_url. Поддержка будет удалена в выпуске после 2024-12-01 (https://github.com/ansible-collections/amazon.aws/pull/1305). - s3_object — поддержка передачи значений
overwrite, отличных отalways,never,differentили lastlast, объявлена устаревшей. Булевы значения следует заменить строкамиalwaysилиnever. Поддержка будет удалена в выпуске после 2024-12-01 (https://github.com/ansible-collections/amazon.aws/pull/1305). - s3_object_info — поддержка одновременной передачи
dualstackиendpoint_urlобъявлена устаревшей; параметрdualstackигнорируется, если переданendpoint_url. Поддержка будет удалена в выпуске после 2024-12-01 (https://github.com/ansible-collections/amazon.aws/pull/1305). - Поддержка передачи одновременно профиля и токенов безопасности посредством сочетания переменных окружения и параметров объявлена устаревшей и будет удалена в выпуске 6.0.0. Начиная с выпуска 6.0.0 можно будет передавать либо профиль, либо токены безопасности независимо от способа передачи. Чтобы явно запретить получение параметра из переменной окружения, передайте в качестве значения параметра пустую строку. Поддержка совместной передачи профиля и токенов безопасности была объявлена устаревшей в выпуске 1.2.0, однако реализована лишь частично в выпуске 5.0.0 (https://github.com/ansible-collections/amazon.aws/pull/1355).
check_point.mgmt
- Модули add/set/delete nat-rule будут заменены единым модулем cp_mgmt_nat_rule.
- Модули cp_mgmt_show_task/s будут заменены единым модулем cp_mgmt_task_facts.
chocolatey.chocolatey
- win_chocolatey — параллельная установка объявлена устаревшей.
cisco.ios
- ios_bgp_address_family — neighbors.address/tag/ipv6_adddress объявлены устаревшими; используйте neighbor_address, позволяющий задавать общие атрибуты для формирования фактов
- ios_bgp_address_family — neighbors.password объявлен устаревшим; используйте password_options, поддерживающий шифрование и пароль
- ios_bgp_address_family — redistribute.ospf.match.external объявлен устаревшим; используйте redistribute.ospf.match.externals, поддерживающий атрибуты для маршрутов OSPF типов E1 и E2
- ios_bgp_address_family — redistribute.ospf.match.nssa_external объявлен устаревшим; используйте redistribute.ospf.match.nssa_externals, поддерживающий атрибуты для маршрутов OSPF типов N1 и N2
- ios_bgp_address_family — redistribute.ospf.match.type_1 объявлен устаревшим; используйте redistribute.ospf.match.nssa_externals.type_1
- ios_bgp_address_family — redistribute.ospf.match.type_2 объявлен устаревшим; используйте redistribute.ospf.match.nssa_externals.type_2
- ios_bgp_address_family — slow_peer объявлен устаревшим; используйте slow_peer_options, поддерживающий атрибут типа dict
community.aws
- Коллекция community.aws — в соответствии с политиками поддержки Python в AWS SDK (https://aws.amazon.com/blogs/developer/python-support-policy-updates-for-aws-sdks-and-tools/) поддержку Python версий ниже 3.8 в этой коллекции планируется удалить в выпуске после 2024-12-01 (https://github.com/ansible-collections/community.aws/pull/1743).
- Коллекция community.aws — после объявления AWS SDK о прекращении поддержки Python версий ниже 3.7 (https://aws.amazon.com/blogs/developer/python-support-policy-updates-for-aws-sdks-and-tools/) поддержка Python версий ниже 3.7 в этой коллекции объявлена устаревшей и будет удалена в выпуске 7.0.0. (https://github.com/ansible-collections/community.aws/pull/1743).
- ecs_service — в выпуске после 2024-06-01 значение параметра
purge_placement_constraintsпо умолчанию изменится сfalseнаtrue(https://github.com/ansible-collections/community.aws/pull/1716). - ecs_service — в выпуске после 2024-06-01 значение параметра
purge_placement_strategyпо умолчанию изменится сfalseнаtrue(https://github.com/ansible-collections/community.aws/pull/1716). - iam_role — все возвращаемые значения верхнего уровня, кроме
iam_roleиchanged, объявлены устаревшими и будут удалены в выпуске после 2023-12-01 (https://github.com/ansible-collections/community.aws/issues/551). - iam_role — в выпуске после 2023-12-01 содержимое
assume_role_policy_documentбольше не будет преобразовываться из CamelCase в snake_case. Возвращаемое значениеassume_role_policy_document_rawуже содержит документ политики в этом будущем формате (https://github.com/ansible-collections/community.aws/issues/551). - iam_role_info — в выпуске после 2023-12-01 содержимое
assume_role_policy_documentбольше не будет преобразовываться из CamelCase в snake_case. Возвращаемое значениеassume_role_policy_document_rawуже содержит документ политики в этом будущем формате (https://github.com/ansible-collections/community.aws/issues/551).
community.crypto
- x509_crl — параметр
modeобъявлен устаревшим; используйте вместо негоcrl_mode. В community.crypto 3.0.0 значение параметраmodeизменится: он будет обозначать режим файла CRL (https://github.com/ansible-collections/community.crypto/issues/596).
community.dns
- Значение нового параметра
txt_character_encodingпо умолчанию изменится сoctalнаdecimalв community.dns 3.0.0. Новое значение по умолчанию будет соответствовать RFC 1035 (https://github.com/ansible-collections/community.dns/pull/134).
community.general
- ModuleHelper module_utils — примесь
depsдля классов MH объявлена устаревшей; вместо неё следует использовать module_utilsdeps(https://github.com/ansible-collections/community.general/pull/6465). - consul — объявлено устаревшим использование параметров, не используемых для
state=absent(https://github.com/ansible-collections/community.general/pull/5772). - gitlab_runner — значение нового параметра
access_level_on_creationпо умолчанию изменится сfalseнаtrueв community.general 7.0.0. В результатеaccess_levelбудет использоваться и при регистрации runner, а не только при обновлениях (https://github.com/ansible-collections/community.general/pull/5908). - gitlab_runner — параметр
access_levelутратит значение по умолчанию в community.general 8.0.0. Начиная с этой версии, чтобы получить защищённый runner, необходимо явно установить для этого параметра значениеref_protected(https://github.com/ansible-collections/community.general/issues/5925). - manageiq_policies —
state=listобъявлен устаревшим; вместо него следует использоватьcommunity.general.manageiq_policies_info(https://github.com/ansible-collections/community.general/pull/5721). - manageiq_tags —
state=listобъявлен устаревшим; вместо него следует использоватьcommunity.general.manageiq_tags_info(https://github.com/ansible-collections/community.general/pull/5727). - rax — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax module utils — код module utils использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_cbs — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_cbs_attachments — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_cdb — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_cdb_database — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_cdb_user — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_clb — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_clb_nodes — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_clb_ssl — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_dns — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_dns_record — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_facts — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_files — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_files_objects — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_identity — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_keypair — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_meta — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_mon_alarm — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_mon_check — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_mon_entity — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_mon_notification — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_mon_notification_plan — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_network — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_queue — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_scaling_group — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rax_scaling_policy — модуль использует устаревшую библиотеку
pyraxи будет удалён в community.general 9.0.0 (https://github.com/ansible-collections/community.general/pull/5752). - rhn_channel, rhn_register — служба RHN на redhat.com была закрыта много лет назад, а срок поддержки Spacewalk 5 (использующей RHN) истёк 31 мая 2020 года; хотя эти модули могут работать с Uyuni / SUSE Manager (ответвлением Spacewalk 5), нам неизвестно о случаях их использования в таких конфигурациях. Поэтому эти модули объявлены устаревшими и будут удалены в community.general 10.0.0, если не появятся сообщения об их полезности и, возможно, желающие взять на себя их поддержку (https://github.com/ansible-collections/community.general/pull/6493).
community.hashi_vault
- ansible-core — поддержка версий
ansible-core2.11и2.12будет прекращена в версии коллекции5.0.0; минимальной поддерживаемой версиейansible-coreстанет2.13(https://github.com/ansible-collections/community.hashi_vault/issues/340). - Поиск hashi_vault — в
v5.0.0повторяющиеся строковые параметры термина будут вызывать исключение, а не выводить предупреждение (https://github.com/ansible-collections/community.hashi_vault/issues/356). - hvac — минимальная версия
hvac, поддерживаемая в версии коллекции5.0.0, будет не ниже1.0.2; этот минимум может быть повышен до выпуска5.0.0, поэтому подпишитесь на связанную задачу и следите за новыми уведомлениями в журнале изменений (https://github.com/ansible-collections/community.hashi_vault/issues/324).
purestorage.fusion
- fusion_hw — модуль управления оборудованием удаляется, поскольку Pure Storage Fusion никогда не поддерживал изменение типа оборудования
- fusion_info — подмножество nigs объявлено устаревшим в пользу network_interface_groups и будет удалено в версии 1.7.0
- fusion_info — подмножество placements объявлено устаревшим в пользу placement_groups и будет удалено в версии 1.7.0
- fusion_pg — параметр placement_engine объявлен устаревшим, поскольку Fusion API больше не поддерживает этот параметр. Он будет удалён в версии 2.0.0
- fusion_se — параметры ‘addresses’, ‘gateway’ и ‘network_interface_groups’ объявлены устаревшими в пользу ‘iscsi’ и будут удалены в версии 2.0.0
- fusion_tn — сети арендаторов заменяются конечными точками хранения
`fusion_se`и группами сетевых интерфейсов`fusion_nig`
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/porting_guides/porting_guide_8.html