Spec-Zone.ru › Ansible

Руководство по переносу Ansible 5

  • Сценарий выполнения
  • Обнаружение интерпретатора Python
  • Командная строка
  • Устаревшее
  • Модули

    • Удаленные модули
    • Уведомления об устаревании
    • Заметные изменения в модулях
  • Плагины
  • Перенос пользовательских скриптов
  • Сеть
  • Руководство по переносу для v5.9.0

    • Добавленные коллекции
    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.8.0

    • Добавленные коллекции
    • Изменения, требующие переделки
    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.7.0

    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.6.0

    • Добавленные коллекции
    • Устаревшие функции
  • Руководство по переносу для v5.5.0

    • Известные проблемы
    • Устаревшие функции
  • Руководство по переносу для v5.4.0

    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.3.0

    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.2.0

    • Известные проблемы
    • Основные изменения
    • Устаревшие функции
  • Руководство по переносу для v5.1.0

    • Известные проблемы
    • Основные изменения
    • Удаленные функции
    • Устаревшие функции
  • Руководство по переносу для v5.0.1

    • Основные изменения
  • Руководство по переносу для v5.0.0

    • Добавленные коллекции
    • Известные проблемы
    • Изменения, требующие переделки
    • Основные изменения
    • Удаленные функции
    • Устаревшие функции

Ansible 5 основан на Ansible-core 2.12.

Рекомендуется прочитать эту страницу вместе с Журналом изменений Ansible 5, чтобы понять, какие обновления вам могут потребоваться.

Сценарий выполнения

  • При вызове задач и установке async, настройка ANSIBLE_ASYNC_DIR в environment: больше недействительна. Используйте вместо этого переменную конфигурации shell async_dir, например, настроив ansible_async_dir.
tasks:
  - dnf:
      name: '*'
      state: latest
    async: 300
    poll: 5
    vars:
      ansible_async_dir: /path/to/my/custom/dir
  • Функция undef() добавлена в среду шаблонов для создания неопределенных переменных непосредственно в шаблоне. При необходимости, может быть предоставлен подсказка для переменных, которые предполагается перезаписать.
vars:
  old: "{{ undef }}"
  new: "{{ undef() }}"
  new_with_hint: "{{ undef(hint='You must override this variable') }}"

Обнаружение интерпретатора Python

Значение по умолчанию INTERPRETER_PYTHON изменено на auto. Список интерпретаторов Python в INTERPRETER_PYTHON_FALLBACK изменён для приоритета Python 3 над Python 2. В сочетании эти изменения означают, что новое поведение по умолчанию - молчаливо отдавать предпочтение Python 3 над Python 2 на удаленных хостах. Раньше выдавалось предупреждение об устаревании в ситуациях, когда обнаружение интерпретатора должно было использовать Python 3, но интерпретатор был установлен на /usr/bin/python.

INTERPRETER_PYTHON_FALLBACK может быть изменён по умолчанию по списку интерпретаторов, настроив переменную ansible_interpreter_python_fallback.

См. документацию по обнаружению интерпретатора для более подробной информации.

Командная строка

  • Python 3.8 на узле-контроллере является обязательным требованием для этого релиза. Сценарии командной строки не будут работать с более ранней версией Python.
  • ansible-vault больше не поддерживает PyCrypto и требует cryptography.

Устаревшее

  • Python 2.6 на целевом узле устарел в этом релизе. ansible-core 2.13 удалит поддержку Python 2.6.
  • Одиночные переменные в условных операторах: when условные операторы больше не автоматически преобразуют строковые булевы значения, такие как "true" и "false", в фактические булевы значения. Любая переменная, содержащая непустую строку, считается истинной. Ранее это было настраиваемо с помощью параметра конфигурации CONDITIONAL_BARE_VARS (и переменной среды ANSIBLE_CONDITIONAL_BARE_VARS). Эта настройка больше не имеет никакого эффекта. Пользователи могут обойти эту проблему, используя фильтр |bool.
vars:
  teardown: 'false'

tasks:
  - include_tasks: teardown.yml
    when: teardown | bool

  - include_tasks: provision.yml
    when: not teardown | bool
  • Метод _remote_checksum() в ActionBase устарел. Любой плагин действий, использующий этот метод, должен использовать _execute_remote_stat() вместо него.

Модули

  • cron теперь требует указания name во всех случаях.
  • cron больше не допускает параметр reboot. Используйте special_time: reboot вместо этого.
  • hostname - В FreeBSD результат before больше не будет "temporarystub", если файл постоянного имени хоста не существует. Вместо этого он будет "" (пустая строка) для согласованности с другими системами.
  • hostname - В системах на основе OpenRC и Solaris результат before больше не будет "UNKNOWN", если файл постоянного имени хоста не существует. Вместо этого он будет "" (пустая строка) для согласованности с другими системами.
  • pip теперь использует модуль Python pip , установленный для интерпретатора Python модуля Ansible, если он доступен, если не указаны executable или virtualenv.

Удаленные модули

Следующие модули больше не существуют:

  • Нет заметных изменений

Уведомления об устаревании

Нет заметных изменений

Заметные изменения в модулях

Нет заметных изменений

Плагины

  • unique фильтр с Jinja2 < 2.10 регистрозависим и теперь корректно генерирует ошибку, если case_sensitive=False вместо case_sensitive=True.
  • Фильтры теории множеств (intersect, difference, symmetric_difference и union) теперь регистрозависимы. Явно используйте case_sensitive=False для сохранения предыдущего поведения. Примечание: с Jinja2 < 2.10 фильтры по умолчанию были регистрозависимыми.
  • password_hash` теперь использует значения по умолчанию passlib при отсутствии указания параметра, например bcrypt_sha256, по умолчанию используют формат «2b», а если требуется формат «2a», необходимо указать его.

Перенос пользовательских скриптов

Нет заметных изменений

Сеть

Нет заметных изменений

END_OF_DOCUMENT_MARKER

Руководство по переносу для v5.9.0

Добавленные коллекции

  • cisco.dnac (версия 6.4.0)
  • community.sap_libs (версия 1.1.0)

Основные изменения

fortinet.fortios

  • Поддержка FortiOS 7.0.2, 7.0.3, 7.0.4, 7.0.5.

Устаревшие возможности

  • Коллекция community.sap была переименована в community.sap_libs. Пока обе коллекции включены в Ansible. Содержание community.sap будет заменено устаревшими перенаправлениями на новую коллекцию в Ansible 7.0.0, а эти перенаправления в конечном итоге будут удалены из Ansible. Пожалуйста, обновите свои FQCN для community.sap.

community.docker

  • Поддержка Ansible 2.9 и ansible-base 2.10 устарела и будет удалена в следующей основной версии (community.docker 3.0.0). Некоторые модули могут по-прежнему работать с этими версиями позже, но мы больше не будем поддерживать код совместимости, необходимый для них (https://github.com/ansible-collections/community.docker/pull/361).
  • Зависимость от docker-compose для сред выполнения устарела и будет удалена в community.docker 3.0.0. Библиотека Python docker-compose не поддерживается и может вызывать проблемы с зависимостями. Вы можете вручную установить её в среде выполнения при необходимости (https://github.com/ansible-collections/community.docker/pull/373).
  • Различные модули — значение по умолчанию tls_hostname, которое должно было быть удалено в community.docker 2.0.0, теперь будет удалено в версии 3.0.0 (https://github.com/ansible-collections/community.docker/pull/362).
  • docker_stack — значения возврата out и err, которые должны были быть удалены в community.docker 2.0.0, теперь будут удалены в версии 3.0.0 (https://github.com/ansible-collections/community.docker/pull/362).

Руководство по переносу для v5.8.0

Добавленные коллекции

  • vmware.vmware_rest (версия 2.1.5)

Изменения, требующие перехода

vmware.vmware_rest

  • Поддержка vmware_rest 2.0.0 требует vSphere 7.0.2 и выше.
  • vcenter_vm_storage_policy — формат параметра disks изменён.
  • vcenter_vm_storage_policy — модуль имеет новый обязательный параметр: vm_home.

Основные изменения

community.mysql

  • Коллекция community.mysql больше не поддерживает Ansible 2.9 и ansible-base 2.10. Хотя мы не принимаем активных мер для предотвращения использования и не планируем внедрять несовместимый код в модули, мы прекратим тестирование с Ansible 2.9 и ansible-base 2.10. Оба варианта в ближайшее время достигнут конца жизненного цикла, и если вы всё ещё используете их, вам следует рассмотреть возможность обновления до latest Ansible / ansible-core 2.11 or later как можно скорее (https://github.com/ansible-collections/community.mysql/pull/343).

community.postgresql

  • Коллекция community.postgresql больше не поддерживает Ansible 2.9 и ansible-base 2.10. Хотя мы не принимаем активных мер для предотвращения использования и не планируем внедрять несовместимый код в модули, мы прекратим тестирование с Ansible 2.9 и ansible-base 2.10. Оба варианта в ближайшее время достигнут конца жизненного цикла, и если вы всё ещё используете их, вам следует рассмотреть возможность обновления до latest Ansible / ansible-core 2.11 or later как можно скорее (https://github.com/ansible-collections/community.postgresql/pull/245).

Устаревшие возможности

community.hashi_vault

  • Параметры token_validate — опция общего аутентификации token_validate изменит значение по умолчанию с True на False в версии community.hashi_vault 4.0.0. Просмотр vault_login и модуль сохранят значение по умолчанию True (https://github.com/ansible-collections/community.hashi_vault/issues/248).

community.network

  • Поддержка Ansible 2.9 и ansible-base 2.10 устарела и будет удалена в следующей основной версии (community.network 4.0.0) этой весной. Хотя большая часть контента, вероятно, всё ещё будет работать с ansible-base 2.10, мы удалим символические ссылки на модули и плагины действий, что сделает их невозможными для использования с Ansible 2.9. Используйте community.network 3.x.y с Ansible 2.9 и ansible-base 2.10, так как эти версии продолжат поддерживать Ansible 2.9 и ansible-base 2.10 даже после окончания их жизненного цикла (https://github.com/ansible-community/community-topics/issues/50, https://github.com/ansible-collections/community.network/pull/382).

vmware.vmware_rest

  • vcenter_vm_storage_policy_compliance — удаление модуля, он возвращает ошибку 404.
  • vcenter_vm_tools — удаление состояния upgrade.
  • vcenter_vm_tools_installer — удаление модуля из коллекции.

Руководство по переносу для v5.7.0

Основные изменения

community.postgresql

  • postgresql_user — аргумент priv устарел и будет удален в community.postgresql 3.0.0. Используйте модуль postgresql_privs для предоставления/отзыва привилегий вместо него (https://github.com/ansible-collections/community.postgresql/issues/212).

fortinet.fortios

  • Поддержка FortiOS 7.0.2, 7.0.3, 7.0.4, 7.0.5.

Устаревшие возможности

community.general

  • nmcli — устаревает режим Hairpin по умолчанию для моста. Это позволит нам изменить его на false в community.general 7.0.0, так как это также значение по умолчанию в nmcli (https://github.com/ansible-collections/community.general/pull/4334).
  • Плагин инвентаризации proxmox — текущее значение по умолчанию true параметра want_proxmox_nodes_ansible_host устарело. Значение по умолчанию будет изменено на false в community.general 6.0.0. Чтобы сохранить текущее поведение, явно задайте want_proxmox_nodes_ansible_host в true в вашей конфигурации инвентаризации. Мы рекомендуем уже перейти к новому поведению, явно задав его в false, и используя compose: для установки ansible_host в правильное значение. Смотрите примеры в документации плагина для получения подробностей (https://github.com/ansible-collections/community.general/pull/4466).

Руководство по переносу для v5.6.0

Добавленные коллекции

  • community.sap (версия 1.0.0)

Устаревшие возможности

cisco.ios

  • Модуль lldp устарел.

Руководство по переносу для v5.5.0

Известные проблемы

community.general

  • pacman — update_cache не может отличить обновлённые и устаревшие списки пакетов и будет сообщать changed в обоих случаях (https://github.com/ansible-collections/community.general/pull/4318).
  • pacman — двоичные файлы, указанные в параметре executable должны поддерживать --print-format для использования этим модулем. В частности, помощник AUR yay, как известно, в настоящее время не поддерживает это (https://github.com/ansible-collections/community.general/pull/4312).

Устаревшие возможности

community.general

  • pacman — начиная с community.general 5.0.0, статус changed update_cache больше не будет игнорироваться, если указаны name или upgrade. Чтобы сохранить старое поведение, добавьте что-то вроде register: result и changed_when: result.packages | length > 0 в свою задачу (https://github.com/ansible-collections/community.general/pull/4329).

Руководство по переносу для v5.4.0

Основные изменения

chocolatey.chocolatey

  • win_chocolatey — Добавлен параметр choco_args для передачи дополнительных аргументов напрямую в Chocolatey.

vyos.vyos

  • Добавьте ‘pool’ в качестве значения для ключа сервера в ntp_global.

Устаревшие возможности

cisco.ios

  • ios_acls — устарел фрагмент атрибута добавлен булевым альтернативом как enable_fragment.

Руководство по переносу для v5.3.0

Основные изменения

f5networks.f5_modules

  • bigip_device_info - также добавлена логика постраничной навигации для повышения стабильности API.
  • bigip_device_info - модуль больше не собирает информацию со всех разделов устройства. Это изменение стабилизирует модуль, собирая ресурсы только из заданного раздела и предотвращая сбор слишком большого количества информации, что может привести к зависанию.

Устаревшие функции

community.general

  • Плагин обратной связи по электронной почте - отсутствие указания sender устарело и будет запрещено в community.general 6.0.0 (https://github.com/ansible-collections/community.general/pull/4140).

Руководство по переносу для v5.2.0

Известные проблемы

dellemc.openmanage

  • 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_smtp - Проблема(212310) - Модуль не предоставляет надлежащего сообщения об ошибке, если адрес назначения содержит более 255 символов.
  • ome_application_alerts_syslog - Проблема(215374) - Модуль не предоставляет надлежащего сообщения об ошибке, если адрес назначения содержит более 255 символов.
  • ome_device_local_access_configuration - Проблема(215035) - Модуль сообщает Successfully updated the local access setting , если для параметра timeout_limit предоставлено недопустимое значение. Однако это значение фактически не применяется в OpenManage Enterprise Modular.
  • ome_device_local_access_configuration - Проблема(217865) - Модуль не отображает надлежащее сообщение об ошибке, если для параметров user_defined и lcd_language предоставлено недопустимое значение.
  • 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. Если канал связи создается с тем же именем, что и существующий канал связи, существующий канал связи изменяется.

purestorage.flasharray

  • purefa_admin - После того, как max_login и lockout были установлены, в настоящее время нет способа сбросить их до нуля, кроме как через графический интерфейс FlashArray

Основные изменения

cisco.meraki

  • meraki_mr_radio - Новый модуль

Устаревшие функции

purestorage.flasharray

  • purefa_sso - Устарел в пользу M(purefa_admin). Будет удален в версии 2.0 коллекции

Руководство по переносу для v5.1.0

Известные проблемы

dellemc.openmanage

  • 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_smtp - Проблема(212310) - Модуль не предоставляет надлежащего сообщения об ошибке, если адрес назначения содержит более 255 символов.
  • ome_application_alerts_syslog - Проблема(215374) - Модуль не предоставляет надлежащего сообщения об ошибке, если адрес назначения содержит более 255 символов.
  • 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. Если канал связи создается с тем же именем, что и существующий канал связи, существующий канал связи изменяется.

Основные изменения

containers.podman

  • Добавлен модуль podman_tag
  • Добавлена поддержка драйвера и параметров драйвера для секретов

Удаленные функции

community.hashi_vault

  • Настройка тестовой среды «legacy» удалена; это не влияет на конечных пользователей и актуально только для авторов (https://github.com/ansible-collections/community.hashi_vault/pull/191).

Устаревшие функции

cisco.nxos

  • Устарел модуль nxos_snmp_community.
  • Устарел модуль nxos_snmp_contact.
  • Устарел модуль nxos_snmp_host.
  • Устарел модуль nxos_snmp_location.
  • Устарел модуль nxos_snmp_traps.
  • Устарел модуль nxos_snmp_user.

community.general

  • Модуль utils module_helper - устарел атрибут ModuleHelper.VarDict (https://github.com/ansible-collections/community.general/pull/3801).

community.hashi_vault

  • Поддержка Ansible 2.9 и ansible-base 2.10 устарела и будет удалена в следующей основной версии (community.hashi_vault 3.0.0) следующей весной (https://github.com/ansible-community/community-topics/issues/50, https://github.com/ansible-collections/community.hashi_vault/issues/189).
  • Метод аутентификации aws_iam_login - метод aws_iam_login переименован в aws_iam. Старое имя будет удалено в версии коллекции 3.0.0. До этого момента оба имени будут работать, и при использовании старого имени будет отображаться предупреждение (https://github.com/ansible-collections/community.hashi_vault/pull/193).

junipernetworks.junos

  • Параметр ‘router_id’ устарел в модулях ресурсов junos_ospf_interfaces, junos_ospfv2 и junos_ospfv3.

Руководство по переносу для v5.0.1

Основные изменения

  • Требование к python в пакете ansible увеличено с >=2.7 до >=3.8 для соответствия ansible-core

Руководство по переносу для v5.0.0

Добавленные коллекции

  • cisco.ise (версия 1.2.1)
  • cloud.common (версия 2.1.0)
  • community.ciscosmb (версия 1.0.4)
  • community.dns (версия 2.0.3)
  • infoblox.nios_modules (версия 1.1.2)
  • netapp.storagegrid (версия 21.7.0)

Известные проблемы

Ansible-core

  • ansible-test - Автодополнение в любом месте, кроме конца команды, с новыми составными опциями, даст неверные результаты. См. проблему 351 для получения дополнительных сведений.

dellemc.openmanage

  • 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_device_power_settings - Проблема (212679) Модуль ome_device_power_settings выдаёт ошибку с указанным сообщением, если значение, указанное для параметра 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) Модуль ome_smart_fabric_uplink не позволяет создавать несколько каналов связи с одинаковым именем, хотя это поддерживается OpenManage Enterprise Modular. Если канал связи создаётся с тем же именем, что и существующий, существующий канал связи изменяется.
  • ome_smart_fabric_uplink - Проблема (186024) Модуль ome_smart_fabric_uplink не позволяет создавать несколько каналов связи с одинаковым именем, хотя это поддерживается OpenManage Enterprise Modular. Если канал связи создаётся с тем же именем, что и существующий, существующий канал связи изменяется.

purestorage.flashblade

  • purefb_lag - Поле mac_address в ответе не заполняется. Это будет исправлено в будущей обновлении FlashBlade.

Изменения, вносящие разрывы

Ansible-core

  • Имена действий, модулей и групп в module_defaults должны быть статическими значениями. Их значения всё ещё могут быть шаблонами.
  • Полные имена плагинов ‘ansible.legacy’ не включаются неявно в action_groups.
  • Неразрешимые группы, плагины действий и модули в module_defaults являются ошибкой.
  • ansible-test - Автоматическая установка требований для плагинов тестирования «cloud» больше не происходит. Затронутые плагины тестирования - aws, azure, cs, hcloud, nios, opennebula, openshift и vcenter. Коллекции вместо этого должны использовать один из поддерживаемых файлов требований к интеграционному тестированию, например, файл tests/integration/requirements.txt
  • ansible-test - HTTP-тестер больше недоступен с командой ansible-test shell. Только команды integration и windows-integration предоставляют HTTP-тестер.
  • ansible-test - Опция --disable-httptester больше недоступна. HTTP-тестер больше не является необязательным для тестов, которые его указывают.
  • ansible-test - Опция --httptester больше недоступна. Чтобы переопределить контейнер, используемый для тестов HTTP-тестера, установите переменную среды ANSIBLE_HTTP_TEST_CONTAINER.
  • ansible-test - Тесты юнит для modules и module_utils теперь ограничены импортом только ansible.module_utils из модуля ansible
  • условные выражения - Условные выражения when больше не автоматически анализируют строковые булевы значения, такие как "true" и "false" в фактические булевы значения. Любая непустая строка теперь рассматривается как истина. Переменная конфигурации CONDITIONAL_BARE_VARS больше не оказывает никакого влияния.
  • имя хоста - Полностью отказывается от поддержки Python 2.4, используя with open(), чтобы упростить обработку исключений, которая в нескольких местах пропускала дескрипторы файлов
  • имя хоста - В FreeBSD строка temporarystub больше не записывается в файл имени хоста в методах получения (и в режиме проверки). В результате, имя хоста по умолчанию будет отображаться как '' (пустая строка) вместо temporarystub для согласованности с другими стратегиями. Это означает, что результат before будет другим.
  • имя хоста - В системах OpenRC и Solaris значение before теперь будет '' (пустая строка), если файл постоянного имени хоста не существует, для согласованности с другими стратегиями.
  • фильтры intersect, difference, symmetric_difference, union - поведение по умолчанию теперь чувствительно к регистру (https://github.com/ansible/ansible/issues/74255)
  • фильтр unique - поведение по умолчанию теперь приводит к ошибке, если фильтр Jinja2 завершается ошибкой, и явное указание case_sensitive=False в качестве резервного варианта Ansible чувствительно к регистру (https://github.com/ansible/ansible/pull/74256)

amazon.aws

  • ec2_instance - поведение ожидания состояния экземпляра изменилось. Если задачи требуют старого поведения ожидания, пока состояние мониторинга экземпляра не станет OK при запуске нового экземпляра, действие должно указать state: started (https://github.com/ansible-collections/amazon.aws/pull/481).
  • ec2_snapshot - поддержка неограниченного ожидания снята, новый стандарт — 10 минут (https://github.com/ansible-collections/amazon.aws/pull/356).
  • ec2_vol_info - возврат attachment_set теперь представляет собой список прикреплений с поддержкой Multi-Attach на диске. (https://github.com/ansible-collections/amazon.aws/pull/362).
  • ec2_vpc_dhcp_option - Модуль был переработан для использования boto3. Типы ключей и значений, возвращаемые модулем, теперь согласованы, что является изменением по сравнению с предыдущим поведением. Была добавлена опция purge_tags, которая по умолчанию равна True. (https://github.com/ansible-collections/amazon.aws/pull/252)
  • ec2_vpc_dhcp_option_info - Теперь сохраняется регистр ключей тегов в возвращаемом значении. (https://github.com/ansible-collections/amazon.aws/pull/252)
  • module_utils.core - Переключатель boto3 удален из параметра region (https://github.com/ansible-collections/amazon.aws/pull/287).
  • module_utils/compat - удалён клон ipaddress (https://github.com/ansible-collections/amazon.aws/pull/461).
  • module_utils/core - функция scrub_none_parameters обновлена, так что descend_into_lists установлено по умолчанию в True (https://github.com/ansible-collections/amazon.aws/pull/297).

arista.eos

  • Компания Arista выпустила платформу 4.23.X и новее, а вместе с ней заменила и устарела несколько команд. Эта PR добавляет поддержку изменений синтаксиса в релиз-трейне 4.23 и более поздних версий. В дальнейшем модули eos не будут поддерживать версию ПО EOS < 4.23.

community.aws

  • ec2_instance - Модуль был перенесен в коллекцию amazon.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_instance
  • ec2_instance_info - Модуль был перенесен в коллекцию amazon.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_instance_info
  • ec2_vpc_endpoint - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint
  • ec2_vpc_endpoint_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_info
  • ec2_vpc_endpoint_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_info
  • ec2_vpc_endpoint_service_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_service_info
  • ec2_vpc_igw - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw
  • ec2_vpc_igw_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw_info
  • ec2_vpc_igw_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw_info
  • ec2_vpc_nat_gateway - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway
  • ec2_vpc_nat_gateway_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway_info
  • ec2_vpc_nat_gateway_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway_info
  • kms_info - подробности ключа теперь возвращаются в атрибуте kms_keys, а не в атрибуте keys (https://github.com/ansible-collections/community.aws/pull/648).

community.crypto

  • Настройка анализа текста dirName и преобразования текста в соответствии с Разделами 2 и 3 RFC 4514. Это аналогично тому, как обрабатывает это cryptography (https://github.com/ansible-collections/community.crypto/pull/274).
  • Утилиты модуля acme — удаление совместимого кода (https://github.com/ansible-collections/community.crypto/pull/290).
  • Модули acme_* — удаление продублированной копии библиотеки Python ipaddress. Если вы используете Python 2.x, убедитесь, что установили библиотеку (https://github.com/ansible-collections/community.crypto/pull/287).
  • Утилиты модуля compatibility — удаление продублированной копии библиотеки Python ipaddress (https://github.com/ansible-collections/community.crypto/pull/287).
  • Утилиты модуля crypto — удаление совместимого кода (https://github.com/ansible-collections/community.crypto/pull/290).
  • get_certificate, openssl_csr_info, x509_certificate_info — в зависимости от версии используемого cryptography модули могут не возвращать значение ASN.1 для расширения, содержащегося в сертификате соответственно CSR, а возвращать его закодированную версию. Как правило, это должно быть идентично значению, содержащемуся в исходном файле, если значение не было повреждено. Для расширений, не обрабатываемых C(cryptography), значение, содержащееся в исходном файле, всегда возвращается без изменений (https://github.com/ansible-collections/community.crypto/pull/318).
  • module_utils — удалены различные функции поддержки PyOpenSSL и значения по умолчанию для бэкенда, которые не нужны для модуля openssl_pkcs12 (https://github.com/ansible-collections/community.crypto/pull/273).
  • openssl_csr, openssl_csr_pipe, x509_crl — поля subject соответственно issuer больше не игнорируют пустые значения, а вместо этого завершаются ошибкой при их обнаружении (https://github.com/ansible-collections/community.crypto/pull/316).
  • openssl_privatekey_info — по умолчанию проверки согласованности не выполняются; их необходимо явно запросить, передав check_consistency=true (https://github.com/ansible-collections/community.crypto/pull/309).
  • x509_crl — для проверок идемпотентности порядок issuer игнорируется. Если порядок важен, используйте новый параметр issuer_ordered (https://github.com/ansible-collections/community.crypto/pull/316).

community.dns

  • Все модули и плагины Hetzner, обрабатывающие записи DNS, теперь по умолчанию работают с необработанными значениями TXT. Прежнее поведение можно получить, установив txt_transformation=api (https://github.com/ansible-collections/community.dns/issues/48, https://github.com/ansible-collections/community.dns/pull/57, https://github.com/ansible-collections/community.dns/pull/60).
  • Создание API Hosttech — теперь требует объект ModuleOptionProvider вместо объекта AnsibleModule. В качестве альтернативы можно передать экземпляр плагина Ansible (https://github.com/ansible-collections/community.dns/pull/37).
  • Модули hetzner_dns_record_info и hosttech_dns_record_info были переименованы в hetzner_dns_record_set_info и hosttech_dns_record_set_info соответственно (https://github.com/ansible-collections/community.dns/pull/54).
  • Модуль hosttech_dns_record был переименован в hosttech_dns_record_set (https://github.com/ansible-collections/community.dns/pull/31).
  • Вспомогательная функция внутреннего обновления записей в объеме (bulk_apply_changes) теперь также возвращает записи, которые были удалены, созданы или обновлены (https://github.com/ansible-collections/community.dns/pull/63).
  • Внутренний API записей больше не позволяет управлять комментариями явно (https://github.com/ansible-collections/community.dns/pull/63).
  • При использовании внутреннего API модулей теперь необходимо передавать тип идентификатора зоны и объект информации о провайдере (https://github.com/ansible-collections/community.dns/pull/27).
  • Модули hetzner_dns_record* — реализована правильная обработка значения TTL по умолчанию. В этом случае значение none теперь принимается и возвращается (https://github.com/ansible-collections/community.dns/pull/52, https://github.com/ansible-collections/community.dns/issues/50).
  • hetzner_dns_record, hetzner_dns_record_set, hetzner_dns_record_sets — значение TTL по умолчанию теперь равно 300, а не 3600, что соответствует значению по умолчанию в веб-консоли (https://github.com/ansible-collections/community.dns/pull/43).
  • hosttech_* module_utils — полная переработка и рефакторинг для поддержки нового API JSON и возможности повторного использования логики модулей, независимых от провайдера (https://github.com/ansible-collections/community.dns/pull/4).
  • hosttech_dns_record_set — параметр overwrite был заменен новым параметром on_existing. Указание overwrite=true эквивалентно on_existing=replace (новое значение по умолчанию). Указание overwrite=false с state=present эквивалентно on_existing=keep_and_fail, а указание overwrite=false с state=absent эквивалентно on_existing=keep (https://github.com/ansible-collections/community.dns/pull/31).

community.docker

  • docker_compose — исправлено поведение по умолчанию timeout таким образом, что stop_grace_period, если определено в файле compose, будет использоваться, если timeout` не указано (https://github.com/ansible-collections/community.docker/pull/163).

community.general

  • archive — добавление проверок идемпотентности для изменений имён файлов и содержимого внутри файла destination (https://github.com/ansible-collections/community.general/pull/3075).
  • Плагин инвентаризации lxd — при использовании с Python 2, плагин теперь нуждается в установке ipaddress из pypi (https://github.com/ansible-collections/community.general/pull/2441).
  • scaleway_security_group_rule — при использовании с Python 2, модуль теперь нуждается в установке ipaddress из pypi (https://github.com/ansible-collections/community.general/pull/2441).

community.hashi_vault

  • Параметры подключения — больше нет значения по умолчанию для параметра url (адрес Vault), поэтому значение должно быть указано (https://github.com/ansible-collections/community.hashi_vault/issues/83).

community.okd

  • Остановка поддержки Python 2 (https://github.com/openshift/community.okd/pull/93).

community.routeros

  • api — из-за ошибки программирования модуль никогда не завершался ошибкой. Теперь это исправлено. Если вы полагаетесь на то, что модуль не завершается ошибкой в случае идемпотентных команд (что приводит к ошибкам, таким как failure: already have such address), вам нужно скорректировать свои роли/playbook. Мы рекомендуем использовать failed_when для принятия ошибок в определённых обстоятельствах, например failed_when: "'failure: already have ' in result.msg[0]" (https://github.com/ansible-collections/community.routeros/pull/39).
  • api — разделение команд больше не использует простое разделение по пробелам, а более совместимый с CLI RouterOS алгоритм разделения (https://github.com/ansible-collections/community.routeros/pull/45).
  • command — модуль теперь всегда указывает, что изменение произошло. Если это неверно, используйте changed_when для определения правильного состояния изменения задачи (https://github.com/ansible-collections/community.routeros/pull/50).

community.zabbix

  • Все роли теперь ссылаются на другие роли и модули через их полные имена коллекций, что делает Ansible 2.10 минимально поддерживаемой версией для ролей (см. issue 477).

kubernetes.core

  • Поддержка python 2 прекращена (https://github.com/ansible-collections/kubernetes.core/pull/86).
  • helm_plugin - удален неиспользуемый release_namespace параметр (https://github.com/ansible-collections/kubernetes.core/pull/85).
  • helm_plugin_info - удален неиспользуемый release_namespace параметр (https://github.com/ansible-collections/kubernetes.core/pull/85).
  • k8s_cluster_info - возвращает apis в виде списка, чтобы избежать перезаписи в случае нескольких версий (https://github.com/ansible-collections/kubernetes.core/pull/41).
  • k8s_facts - удален устаревший псевдоним от k8s_facts до k8s_info (https://github.com/ansible-collections/kubernetes.core/pull/125).

netapp.storagegrid

  • Эта версия вносит критические изменения. Все модули были переименованы с nac_sg_* на na_sg_*. Плейбуки и роли должны быть обновлены соответственно.

Основные изменения

Ansible-core

  • Требование к контроллеру Python - для узла управления (машины, на которой выполняется Ansible) требуется Python 3.8 или более поздней версии (https://github.com/ansible/ansible/pull/74013)
  • ansible-test - Все плагины «cloud», использующие контейнеры, теперь могут использоваться со всеми узлами POSIX и Windows. Ранее плагины вообще не работали с Windows, а поддержка узлов, созданных с помощью --remote опции, была несогласованной.
  • ansible-test - Теперь коллекции могут указывать требования и ограничения для интеграционных тестов, специфичные для контроллера и целевого узла. Если они указаны, они имеют приоритет над ранее доступными файлами требований и ограничений.
  • ansible-test - Интеграционные тесты, выполняемые с помощью команды integration, теперь могут выполняться на двух отдельных узлах вместо постоянного выполнения на узле управления. Целевой узел может быть предоставлен ansible-test или пользователем, при условии доступности через SSH.
  • ansible-test - Большинство функций контейнеров теперь поддерживаются под Podman. Ранее требовалась символическая ссылка для docker , указывающая на podman.
  • ansible-test - Добавлены новые параметры --controller и --target / --target-python, позволяющие больше контролировать тестовые среды.
  • ansible-test - Теперь требуется Python 3.8 - 3.10 для выполнения ansible-test, что соответствует требованиям Python контроллера Ansible. Более старые версии Python (2.6 - 2.7 и 3.5 - 3.10) все еще могут быть целевыми для соответствующих тестов.
  • ansible-test - Для обеспечения доступности портов контейнеров на узлах, не являющихся контейнерами, теперь используется исключительно туннелирование и перенаправление SSH-портов. При тестировании на POSIX-системах это требует входа по SSH от root. Ранее туннелирование SSH-портов комбинировалось с правилами брандмауэра или другими методами перенаправления портов, некоторые платформы не поддерживались.
  • ansible-test - Тесты на корректность всегда выполняются в изолированных виртуальных средах Python, специфичных для требований каждого теста. Среды кэшируются.
  • ansible-test - Тесты на корректность теперь разделены на две категории: контроллер и целевой узел. Все тесты, кроме import и compile, являются тестами контроллера. Тесты контроллера всегда выполняются с использованием той же версии Python, которая используется для запуска ansible-test. Тесты целевого узла используют указанную пользователем версию Python или все доступные версии Python.
  • ansible-test - Тесты на корректность теперь используют полностью закрепленные требования, которые независимы друг от друга и от других типов тестов.
  • ansible-test - Тесты, выполняемые с использованием тестовых контейнеров centos6 и default, теперь используют контейнер-прокси PyPI для доступа к PyPI при использовании Python 2.6. Это позволяет тестам, выполняемым под Python 2.6, продолжать функционировать, даже если PyPI прекращает поддержку клиентов, не поддерживающих SNI.
  • ansible-test - Тесты на корректность future-import-boilerplate и metaclass-boilerplate ограничены удаленно-только кодом. Кроме того, они пропускаются для коллекций, которые не декларируют поддержку Python 2.x.
  • ansible-test - Тесты на корректность import и compile ограничивают проверки версий Python только для удаленных узлов удаленно-только кодом.
  • ansible-test - Тесты модулей контроллера теперь требуют Python 3.8 или более поздней версии.
  • ansible-test - Нейтральные по версии тесты на корректность теперь требуют Python 3.8 или более поздней версии.
  • junit callback - Модули Python junit_xml и ordereddict больше не требуются для использования плагина обратного вызова junit.

amazon.aws

  • Коллекция amazon.aws - В связи с объявлением AWS SDK о прекращении поддержки Python менее 3.6 (https://boto3.amazonaws.com/v1/documentation/api/1.17.64/guide/migrationpy3.html), эта коллекция теперь требует Python 3.6+ (https://github.com/ansible-collections/amazon.aws/pull/298).
  • Коллекция amazon.aws - Коллекция amazon.aws прекратила поддержку botocore<1.18.0 и boto3<1.15.0. Большинство модулей будут продолжать работать со старыми версиями AWS SDK, однако совместимость со старыми версиями SDK не гарантируется и не будет тестироваться. При использовании более старых версий SDK Ansible выведет предупреждение (https://github.com/ansible-collections/amazon.aws/pull/502).
  • ec2_instance - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_instance.
  • ec2_instance_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_instance_info.
  • ec2_vpc_endpoint - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint.
  • ec2_vpc_endpoint_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_info.
  • ec2_vpc_endpoint_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_info.
  • ec2_vpc_endpoint_service_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_endpoint_service_info.
  • ec2_vpc_igw - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw.
  • ec2_vpc_igw_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw_facts.
  • ec2_vpc_igw_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_igw_info.
  • ec2_vpc_nat_gateway - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway.
  • ec2_vpc_nat_gateway_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway_info.
  • ec2_vpc_nat_gateway_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_nat_gateway_info.
  • ec2_vpc_route_table - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_route_table.
  • ec2_vpc_route_table_facts - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_route_table_facts.
  • ec2_vpc_route_table_info - Модуль был перенесен из коллекции community.aws. Плейбуки, использующие полное имя коллекции для этого модуля, должны быть обновлены для использования amazon.aws.ec2_vpc_route_table_info.

cisco.ise

  • Добавлен ise_uses_api_gateway к параметрам модуля.
  • Добавлена роль ‘aws_deployment’, позволяющая развертывать кластер ISE произвольного размера в AWS.
  • Добавлен ise_responses для значений возврата модулей info.
  • Добавлен ise_update_response для значений возврата модулей, не являющихся info.
  • Исправлена внутренняя логика модулей, у которых нет get по имени и не работает фильтр.
  • Переименован модуль device_administration_authorization_exception_rules в device_administration_local_exception_rules.
  • Переименован модуль device_administration_authorization_global_exception_rules в device_administration_global_exception_rules.
  • Переименован модуль network_access_authorization_exception_rules в network_access_local_exception_rules.
  • Переименован модуль network_access_authorization_global_exception_rules в network_access_global_exception_rules.
  • Обновлены требуемые параметры для модулей.
  • Обновлены параметры sdk для предыдущих модулей
  • device_administration_authorization_exception_rules - модуль удален.
  • device_administration_authorization_exception_rules_info - модуль удален.
  • device_administration_authorization_global_exception_rules - модуль удален.
  • device_administration_authorization_global_exception_rules_info - модуль удален.
  • guest_user_reinstante - модуль удален.
  • import_trust_cert - модуль удален.
  • network_access_authorization_exception_rules - модуль удален.
  • network_access_authorization_exception_rules_info - модуль удален.
  • network_access_authorization_global_exception_rules - модуль удален.
  • network_access_authorization_global_exception_rules_info - модуль удален.
  • personas_check_standalone - Добавляет модуль для развертывания персон на существующих узлах кластера ISE.
  • personas_export_certs - Добавляет модуль для развертывания персон на существующих узлах кластера ISE.
  • personas_promote_primary - Добавляет модуль для развертывания персон на существующих узлах кластера ISE.
  • personas_update_roles - Добавляет модуль для развертывания персон на существующих узлах кластера ISE.
  • service_info - модуль удален.
  • system_certificate_export - модуль удален.
  • telemetry_info_info - модуль удален.

cloud.common

  • turbo - включить режим turbo для плагинов lookup

cloudscale_ch.cloud

  • Добавлен модуль custom_image

community.aws

  • Коллекция community.aws прекратила поддержку botocore<1.18.0 и boto3<1.15.0 (https://github.com/ansible-collections/community.aws/pull/711). Большинство модулей по-прежнему будут работать с более старыми версиями AWS SDK, однако совместимость со старыми версиями SDK не гарантируется и не будет проверяться. При использовании более старых версий SDK Ansible выведет предупреждение (https://github.com/ansible-collections/amazon.aws/pull/442).

community.ciscosmb

  • Требуется Python 2.6, 2.7, 3.5
  • Добавлена поддержка CBS350
  • Добавлена поддержка antsibull-changelog
  • Добавлен модуль ciscosmb_command
  • Добавлен набор фактов “interfaces”
  • Модуль ciscosmb_facts с набором по умолчанию и unit-тестами
  • Канонизация имен интерфейсов
  • Преобразование коллекции qaxi.ciscosmb в community.ciscosmb
  • Преобразование community.ciscosmb.ciscosmb_command в community.ciscosmb.command
  • Преобразование community.ciscosmb.ciscosmb_facts в community.ciscosmb.facts
  • Unit-тесты для CBS350

community.dns

  • Модули hosttech_* - поддерживают новый JSON API по адресу https://api.ns1.hosttech.eu/api/documentation/ (https://github.com/ansible-collections/community.dns/pull/4).

community.general

  • Модули bitbucket_* - client_id больше не отмечается как no_log=true. Если вы полагались на то, что его значение не отображается в логах и выводе, пожалуйста, отметьте все задачи с no_log: true (https://github.com/ansible-collections/community.general/pull/2045).

community.kubernetes

  • Перенаправление всего из community.kubernetes в kubernetes.core (https://github.com/ansible-collections/community.kubernetes/pull/425).

community.okd

  • Обновление до использования kubernetes.core 2.0 (https://github.com/openshift/community.okd/pull/93).

community.postgresql

  • postgresql_query - значение параметра as_single_query по умолчанию будет изменено на yes в версии community.postgresql 2.0.0 (https://github.com/ansible-collections/community.postgresql/issues/85).

community.vmware

  • vmware_object_custom_attributes_info - добавлен новый модуль для сбора пользовательских атрибутов объекта (https://github.com/ansible-collections/community.vmware/pull/851).

containers.podman

  • Добавление генерации systemd для под.
  • Генерация файлов службы systemd для контейнеров.

dellemc.openmanage

  • idrac_server_config_profile - Добавлена поддержка экспорта и импорта профиля конфигурации сервера через HTTP/HTTPS-общий ресурс.
  • ome_device_group - Добавлена поддержка добавления устройств в группу с использованием IP-адресов устройств и идентификатора группы.
  • ome_firmware - Добавлен параметр для подготовки обновления прошивки и поддержки выбора компонентов и устройств для обновления прошивки на основе эталона.
  • ome_firmware_baseline - Модуль поддерживает режим проверки и позволяет изменять и удалять эталоны прошивки.
  • ome_firmware_catalog - Модуль поддерживает режим проверки и позволяет изменять и удалять каталоги прошивки.

fortinet.fortios

  • Добавление реальных примеров использования в разделе примеров для некоторых модулей конфигурации.
  • Сбор текущих конфигураций модулей и преобразование их в playbook'ы.
  • Улучшение fortios_configuration_fact для одновременного использования нескольких селекторов.
  • Новый модуль fortios_monitor_fact.
  • Поддержка FortiOS 7.0.1.
  • Поддержка Fortios 7.0.
  • Поддержка API логов.
  • Поддержка check_mode во всех модулях, основанных на cofigurationAPI.
  • Поддержка фильтрации для модулей сбора фактов fortios_configuration_fact и fortios_monitor_fact.
  • Поддержка операций с членами (удаление/добавление дополнительных членов) для объекта, содержащего список членов.
  • Поддержка перемещения политики в firewall_central_snat_map.
  • Поддержка функции селекторов в fortios_monitor_fact и fortios_log_fact.
  • Унификация схем для API мониторинга.

gluster.gluster

  • Включить client.ssl, server.ssl перед запуском тома Gluster (https://github.com/gluster/gluster-ansible-collection/pull/19)

hetzner.hcloud

  • Введение группирования размещения

kubernetes.core

  • k8s - устаревший параметр merge_type=json. Функциональность JSON-патча никогда не работала (https://github.com/ansible-collections/kubernetes.core/pull/99).
  • k8s_json_patch - разделение функциональности JSON-патча в отдельный модуль (https://github.com/ansible-collections/kubernetes.core/pull/99).
  • Замена клиента Openshift на официальный клиент Kubernetes (https://github.com/ansible-collections/kubernetes.core/issues/34).

netapp.cloudmanager

  • Добавление стадии среды во все модули в cloudmanager

netbox.netbox

  • Пакеты теперь являются обязательным пакетом Python и устанавливаются через Ansible 2.10+.

openvswitch.openvswitch

  • По ошибке репозиторий был помечен как 2.0.0, и, поскольку это не предполагалось и не может быть отменено, мы выпускаем 2.0.1, чтобы проинформировать сообщество о значительном обновлении версии.

ovirt.ovirt

  • remove_stale_lun - Добавление роли для удаления устаревших LUN (https://bugzilla.redhat.com/1966873).

Удаленные возможности

Ansible-core

  • Встроенный модуль `module_util` ansible.module_utils.common.removed ранее был устаревшим и был удалён.
  • В модуле `connections` удалены заглушки проверки паролей, которые были перенесены в плагины.
  • В модуле `task` удалена автоматическая коэрация параметров встраиваемых параметров в переменные.

ansible.windows

  • `win_reboot` - Удалён shutdown_timeout и shutdown_timeout_sec, которые не выполняли никаких действий с версии Ansible 2.5.

community.crypto

  • `acme_*` модули - теперь обязательно указывать опцию acme_directory (https://github.com/ansible-collections/community.crypto/pull/290).
  • `acme_*` модули - теперь обязательно указывать опцию acme_version (https://github.com/ansible-collections/community.crypto/pull/290).
  • `acme_account_facts` - удалён устаревший перенаправление. Используйте `community.crypto.acme_account_info` вместо него (https://github.com/ansible-collections/community.crypto/pull/290).
  • `acme_account_info` - retrieve_orders=url_list больше не возвращает значение orders. Используйте значение возврата order_uris вместо него (https://github.com/ansible-collections/community.crypto/pull/290).
  • Модули утилиты `crypto.info` - удалено устаревшее перенаправление. Используйте crypto.pem вместо него (https://github.com/ansible-collections/community.crypto/pull/290).
  • `get_certificate` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_certificate` - удалено устаревшее перенаправление. Используйте `community.crypto.x509_certificate` вместо него (https://github.com/ansible-collections/community.crypto/pull/290).
  • `openssl_certificate_info` - удалено устаревшее перенаправление. Используйте `community.crypto.x509_certificate_info` вместо него (https://github.com/ansible-collections/community.crypto/pull/290).
  • `openssl_csr` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_csr` и `openssl_csr_pipe` - version теперь принимает только значение 1 (по умолчанию) (https://github.com/ansible-collections/community.crypto/pull/290).
  • `openssl_csr_info` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_csr_pipe` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_privatekey` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_privatekey_info` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_privatekey_pipe` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_publickey` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_publickey_info` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_signature` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `openssl_signature_info` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `x509_certificate` - удалён поставщик assertonly (https://github.com/ansible-collections/community.crypto/pull/289).
  • `x509_certificate` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `x509_certificate_info` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).
  • `x509_certificate_pipe` - удалён бэкенд pyopenssl (https://github.com/ansible-collections/community.crypto/pull/273).

community.docker

  • `docker_container` - значение по умолчанию для container_default_behavior изменено на no_defaults (https://github.com/ansible-collections/community.docker/pull/210).
  • `docker_container` - значение по умолчанию для network_mode - это имя первой сети, указанной в networks, если таковые указаны и networks_cli_compatible=true (https://github.com/ansible-collections/community.docker/pull/210).
  • `docker_container` - специальное значение all больше не может использоваться в published_ports рядом с другими значениями. Используйте publish_all_ports=true вместо него (https://github.com/ansible-collections/community.docker/pull/210).
  • `docker_login` - удалена опция email (https://github.com/ansible-collections/community.docker/pull/210).

community.general

  • Все скрипты инвентаризации и хранилища, содержащиеся в community.general, были перемещены в репозиторий GitHub contrib-scripts (https://github.com/ansible-collections/community.general/pull/2696).
  • Модульные утилиты ModuleHelper - удален механизм обратного вызова, когда значение не может быть определено для параметра (https://github.com/ansible-collections/community.general/pull/3461).
  • Удалены устаревшие утилиты и фрагменты документации модуля netapp (https://github.com/ansible-collections/community.general/pull/3197).
  • Плагины lookup nios, nios_next_ip, nios_next_network, фрагмент документации nios и модули nios_host_record, nios_ptr_record, nios_mx_record, nios_fixed_address, nios_zone, nios_member, nios_a_record, nios_aaaa_record, nios_network, nios_dns_view, nios_txt_record, nios_naptr_record, nios_srv_record, nios_cname_record, nios_nsgroup и nios_network_view были удалены из community.general 4.0.0 и заменены переадресацией на коллекцию infoblox.nios_modules. Пожалуйста, установите коллекцию infoblox.nios_modules, чтобы продолжить использование этих плагинов и модулей, и обновите свои FQCN (https://github.com/ansible-collections/community.general/pull/3592).
  • Удалена проданная копия ipaddress. Пожалуйста, используйте ipaddress из стандартной библиотеки Python 3 или с pypi. (https://github.com/ansible-collections/community.general/pull/2441).
  • cpanm - удален устаревший system_lib параметр. Используйте механизм повышения привилегий Ansible вместо него; этот параметр в основном использовал sudo (https://github.com/ansible-collections/community.general/pull/3461).
  • grove - удален устаревший псевдоним message параметра message_content (https://github.com/ansible-collections/community.general/pull/3461).
  • proxmox - значение по умолчанию proxmox_default_behavior изменено на no_defaults (https://github.com/ansible-collections/community.general/pull/3461).
  • proxmox_kvm - значение по умолчанию proxmox_default_behavior изменено на no_defaults (https://github.com/ansible-collections/community.general/pull/3461).
  • runit - удален устаревший dist параметр, который не использовался модулем (https://github.com/ansible-collections/community.general/pull/3461).
  • telegram - удалены устаревшие параметры msg, msg_format и chat_id (https://github.com/ansible-collections/community.general/pull/3461).
  • xfconf - значение по умолчанию disable_facts изменено на true, а значение false больше не допускается. Зарегистрируйте результаты работы модуля вместо этого (https://github.com/ansible-collections/community.general/pull/3461).

community.hashi_vault

  • прекращена поддержка Python 2 и Python 3.5 (https://github.com/ansible-collections/community.hashi_vault/issues/81).
  • удалена поддержка следующих устаревших переменных окружения: VAULT_AUTH_METHOD, VAULT_TOKEN_PATH, VAULT_TOKEN_FILE, VAULT_ROLE_ID, VAULT_SECRET_ID (https://github.com/ansible-collections/community.hashi_vault/pull/173).

Устаревшие функции

Ansible-core

  • ansible-test - Опция --docker-no-pull устарела и не имеет эффекта.
  • ansible-test - Опция --no-pip-check устарела и не имеет эффекта.
  • Действие include устарело в пользу include_tasks, import_tasks и import_playbook.
  • FileLock из module_utils планируется удалить, так как он не используется из-за своей ненадежности.

amazon.aws

  • ec2 - модуль ec2 на основе boto устарел в пользу модуля ec2_instance на основе boto3. Модуль ec2 будет удалён в релизе 4.0.0 (https://github.com/ansible-collections/amazon.aws/pull/424).
  • ec2_classic_lb - установка факта ec2_elb устарела и будет удалена в релизе 4.0.0 коллекции. Теперь модуль возвращает elb, к которому можно получить доступ с помощью ключевого слова register (https://github.com/ansible-collections/amazon.aws/pull/552).
  • ec2_vpc_dhcp_option - Ключ возврата new_config устарел и будет удален в будущей версии. Он будет заменён на dhcp_config. Временное решение — возвращаются оба значения. (https://github.com/ansible-collections/amazon.aws/pull/252)

ansible.netcommon

  • network_cli - Параметр paramiko_ssh look_for_keys автоматически устанавливался на основе значений опций password и private_key_file, переданных в network_cli. Теперь этот параметр можно задать явно, а автоматическое назначение look_for_keys будет удалено после 2024-01-01 (https://github.com/ansible-collections/ansible.netcommon/pull/271).

ansible.windows

  • win_reboot - Недоступные хосты могут быть проигнорированы с помощью ignore_errors: True, но эта возможность будет удалена в будущей версии. Используйте ignore_unreachable: True, чтобы игнорировать недоступные хосты вместо этого. - https://github.com/ansible-collections/ansible.windows/issues/62
  • win_updates - Устарело возвращаемое значение filtered_reason для каждого отфильтрованного обновления в пользу filtered_reasons. Это сделано для показа всех причин фильтрации обновления, а не только первой.
  • win_updates - Устарела опция use_scheduled_task, так как она больше не используется.
  • win_updates - Устарели опции whitelist и blacklist в пользу accept_list и reject_list соответственно, чтобы соответствовать новым стандартам, используемым в Ansible для этих типов опций.

arista.eos

  • Удаление тестирования с поставщиком для интеграционных задач ansible-test. Это помогает нам перейти к интеграционным тестам network-ee.

cisco.ios

  • Устарел модуль ios_bgp в пользу ios_bgp_global и ios_bgp_address_family.
  • Устарели модули ios_ntp.
  • Удаление тестирования с поставщиком для интеграционных задач ansible-test. Это помогает нам перейти к интеграционным тестам network-ee.

cisco.iosxr

  • Модуль iosxr_logging устарел в пользу нового ресурсного модуля iosxr_logging_global и будет удалён в релизе после ‘2023-08-01’.

cisco.nxos

  • Устарели модули nxos_ntp, nxos_ntp_options, nxos_ntp_auth.
  • Модуль nxos_logging устарел в пользу нового ресурсного модуля nxos_logging_global и будет удалён в релизе после ‘2023-08-01’.

community.aws

  • dynamodb_table - DynamoDB не поддерживает указание неключевых атрибутов при создании индекса ALL. Передача includes для таких индексов в настоящее время игнорируется, но приведет к ошибкам после версии 3.0.0 (https://github.com/ansible-collections/community.aws/pull/726).
  • dynamodb_table - DynamoDB не поддерживает обновление первичных индексов таблицы. Попытки таких изменений в настоящее время игнорируются, но приведут к ошибкам после версии 3.0.0 (https://github.com/ansible-collections/community.aws/pull/726).
  • ec2_elb - модуль ec2_elb был удалён и перенаправлен на модуль elb_instance, который выполняет идентичные функции. Изначальное имя ec2_elb теперь устарело и будет удалено в релизе 3.0.0 (https://github.com/ansible-collections/community.aws/pull/586).
  • ec2_elb_info - модуль ec2_elb_info на основе boto устарел в пользу модуля elb_classic_lb_info на основе boto3. Модуль ec2_elb_info будет удалён в релизе 3.0.0 (https://github.com/ansible-collections/community.aws/pull/586).
  • elb_classic_lb - модуль elb_classic_lb был удалён и перенаправлен на модуль amazon.aws.ec2_elb_lb, который выполняет идентичные функции.
  • elb_instance - установка факта ec2_elb устарела и будет удалена в релизе 4.0.0 коллекции. См. документацию модуля для альтернативного примера с использованием ключевого слова register (https://github.com/ansible-collections/community.aws/pull/773).
  • iam - модуль iam на основе boto устарел в пользу модулей iam_user, iam_group и iam_role на основе boto3. Модуль iam будет удалён в релизе 3.0.0 (https://github.com/ansible-collections/community.aws/pull/664).
  • iam_cert - модуль iam_cert переименован в iam_server_certificate для согласованности с сопутствующим модулем iam_server_certificate_info. Использование модуля не изменилось. Псевдоним iam_cert будет удален в версии 4.0.0 (https://github.com/ansible-collections/community.aws/pull/728).
  • iam_server_certificate - Передача имён файлов параметрам cert, chain_cert и key устарела. Рекомендуется использовать плагин lookup для чтения файлов, см. документацию для примера (https://github.com/ansible-collections/community.aws/pull/735).
  • iam_server_certificate - Значение по умолчанию для параметра dup_ok в настоящее время false, в версии 4.0.0 оно будет обновлено до true. Чтобы сохранить текущее поведение, явно установите параметр dup_ok в значение false (https://github.com/ansible-collections/community.aws/pull/737).
  • rds - модуль rds на основе boto устарел в пользу модуля rds_instance на основе boto3. Модуль rds будет удалён в релизе 3.0.0 (https://github.com/ansible-collections/community.aws/pull/663).
  • rds_snapshot - Модуль rds_snapshot переименован в rds_instance_snapshot. Использование модуля не изменилось. Псевдоним rds_snapshot будет удален в версии 4.0.0 (https://github.com/ansible-collections/community.aws/pull/783).
  • script_inventory_ec2 - Скрипт инвентаризации ec2.py переносится в новый репозиторий. Теперь скрипт можно загрузить по адресу https://github.com/ansible-community/contrib-scripts/blob/main/inventory/ec2.py и он будет удалён из этой коллекции в релизе 3.0. Рекомендуется перейти от скрипта к плагину инвентаризации amazon.aws.ec2.

community.azure

  • Все модули community.azure.azure_rm_<resource>_facts устарели. Используйте модули azure.azcollection.azure_rm_<resource>_info вместо них (https://github.com/ansible-collections/community.azure/pull/24).
  • Все модули community.azure.azure_rm_<resource>_info устарели. Используйте модули azure.azcollection.azure_rm_<resource>_info вместо них (https://github.com/ansible-collections/community.azure/pull/24).
  • community.azure.azure_rm_managed_disk и community.azure.azure_rm_manageddisk устарели. Используйте azure.azcollection.azure_rm_manageddisk вместо них (https://github.com/ansible-collections/community.azure/pull/24).
  • community.azure.azure_rm_virtualmachine_extension и community.azure.azure_rm_virtualmachineextension устарели. Используйте azure.azcollection.azure_rm_virtualmachineextension вместо них (https://github.com/ansible-collections/community.azure/pull/24).
  • community.azure.azure_rm_virtualmachine_scaleset и community.azure.azure_rm_virtualmachinescaleset устарели. Используйте azure.azcollection.azure_rm_virtualmachinescaleset вместо них (https://github.com/ansible-collections/community.azure/pull/24).

community.crypto

  • acme_* модули - Версия 1 ACME устарела и поддержка будет удалена в community.crypto 2.0.0 (https://github.com/ansible-collections/community.crypto/pull/288).

community.dns

  • Модуль hosttech_dns_records был переименован в hosttech_dns_record_sets. Старое имя перестанет работать в community.dns 3.0.0 (https://github.com/ansible-collections/community.dns/pull/31).

community.docker

  • docker_* модули и плагины, кроме плагина подключения docker_swarm и docker_compose, docker_stack*` modules - the current default ``localhost для tls_hostname устарели. В community.docker 2.0.0 он будет вычисляться из docker_host вместо этого (https://github.com/ansible-collections/community.docker/pull/134).
  • docker_container - новое значение по умолчанию command_handling, compatibility, устарело и изменится на correct в community.docker 3.0.0. Модуль выводит предупреждение об устаревании в тех случаях, когда поведение изменится. Обратите внимание, что ansible-core выведет предупреждение об устаревании только один раз, поэтому если оно отображается для более ранней задачи, возможно, есть и другие задачи с этим предупреждением, где оно не отображается (https://github.com/ansible-collections/community.docker/pull/186).
  • docker_container - использование специального значения all в published_ports устарело. Используйте publish_all_ports=true вместо этого (https://github.com/ansible-collections/community.docker/pull/210).

community.general

  • Поддержка Ansible 2.9 и ansible-base 2.10 устарела и будет удалена в следующем крупном выпуске (community.general 5.0.0) следующей весной. Хотя большая часть содержимого, вероятно, по-прежнему будет работать с ansible-base 2.10, мы удалим символические ссылки для модулей и плагинов действий, что сделает их невозможным для использования с Ansible 2.9. Пожалуйста, используйте community.general 4.x.y с Ansible 2.9 и ansible-base 2.10, так как эти релизы будут продолжать поддерживать Ansible 2.9 и ansible-base 2.10 даже после их окончания жизненного цикла (https://github.com/ansible-community/community-topics/issues/50, https://github.com/ansible-collections/community.general/pull/3723).
  • ali_instance_info - отмечена версия удаления устаревших параметров availability_zone и instance_names (https://github.com/ansible-collections/community.general/issues/2429).
  • bitbucket_* модули - параметры username устарели в пользу workspace и будут удалены в community.general 6.0.0 (https://github.com/ansible-collections/community.general/pull/2045).
  • dnsimple - python-dnsimple < 2.0.0 устарел и поддержка будет удалена в community.general 5.0.0 (https://github.com/ansible-collections/community.general/pull/2946#discussion_r667624693).
  • gitlab_group_members - установка gitlab_group на name или path устарела. Используйте full_path вместо этого (https://github.com/ansible-collections/community.general/pull/3451).
  • keycloak_authentication - возвращаемое значение flow устарело и будет удалено в community.general 6.0.0; используйте end_state вместо этого (https://github.com/ansible-collections/community.general/pull/3280).
  • keycloak_group - возвращаемое значение group устарело и будет удалено в community.general 6.0.0; используйте end_state вместо этого (https://github.com/ansible-collections/community.general/pull/3280).
  • linode - параметр backupsenabled устарел и будет удален в community.general 5.0.0 (https://github.com/ansible-collections/community.general/pull/2410).
  • lxd_container - текущее значение по умолчанию true для ignore_volatile_options устарело и изменится на false в community.general 6.0.0 (https://github.com/ansible-collections/community.general/pull/3429).
  • serverless - параметр functions устарел, поскольку он не использовался в коде (https://github.com/ansible-collections/community.general/pull/2845).
  • xfconf - состояние get устарело. Следует использовать новый модуль xfconf_info (https://github.com/ansible-collections/community.general/pull/3049).

community.grafana

  • Просмотр grafana_dashboard lookup - Использование искажённой версии API ключа больше не приветствуется.

community.hashi_vault

  • Коллекция hashi_vault - поддержка Python 2 будет удалена в версии 2.0.0 community.hashi_vault (https://github.com/ansible-collections/community.hashi_vault/issues/81).
  • Коллекция hashi_vault - поддержка Python 3.5 будет удалена в версии 2.0.0 community.hashi_vault (https://github.com/ansible-collections/community.hashi_vault/issues/81).
  • Просмотр hashi_vault - раздел [lookup_hashi_vault] в файле ansible.cfg устарел и будет удален в версии коллекции 3.0.0. Вместо этого можно использовать раздел [hashi_vault_collection], который будет применяться ко всем плагинам в коллекции в дальнейшем (https://github.com/ansible-collections/community.hashi_vault/pull/144).

community.kubernetes

  • Коллекция community.kubernetes переименована в kubernetes.core. Все содержимое коллекции заменено устаревшими перенаправлениями на kubernetes.core. Если вы используете FQCN, начинающиеся с community.kubernetes, обновите их до kubernetes.core (https://github.com/ansible-collections/community.kubernetes/pull/439).

community.vmware

  • vmware_guest_vnc - Sphere 7.0 удалил встроенный сервер VNC (https://docs.vmware.com/en/VMware-vSphere/7.0/rn/vsphere-esxi-vcenter-server-70-release-notes.html#productsupport).

inspur.sm

  • add_ad_group - Эта функция будет удалена в inspur.sm.add_ad_group 3.0.0. Заменена на inspur.sm.ad_group.
  • add_ldap_group - Эта функция будет удалена в inspur.sm.add_ldap_group 3.0.0. Заменена на inspur.sm.ldap_group.
  • add_user - Эта функция будет удалена в inspur.sm.add_user 3.0.0. Заменена на inspur.sm.user.
  • add_user_group - Эта функция будет удалена в inspur.sm.add_user_group 3.0.0. Заменена на inspur.sm.user_group.
  • del_ad_group - Эта функция будет удалена в inspur.sm.del_ad_group 3.0.0. Заменена на inspur.sm.ad_group.
  • del_ldap_group - Эта функция будет удалена в inspur.sm.del_ldap_group 3.0.0. Заменена на inspur.sm.ldap_group.
  • del_user - Эта функция будет удалена в inspur.sm.del_user 3.0.0. Заменена на inspur.sm.user.
  • del_user_group - Эта функция будет удалена в inspur.sm.del_user_group 3.0.0. Заменена на inspur.sm.user_group.
  • edit_ad_group - Эта функция будет удалена в inspur.sm.edit_ad_group 3.0.0. Заменена на inspur.sm.ad_group.
  • edit_ldap_group - Эта функция будет удалена в inspur.sm.edit_ldap_group 3.0.0. Заменена на inspur.sm.ldap_group.
  • edit_user - Эта функция будет удалена в inspur.sm.edit_user 3.0.0. Заменена на inspur.sm.user.
  • edit_user_group - Эта функция будет удалена в inspur.sm.edit_user_group 3.0.0. Заменена на inspur.sm.user_group.

junipernetworks.junos

  • Устарел router_id из модуля ресурсов ospfv2.
  • Устарел router_id из модуля ресурсов ospfv3.
  • Модуль junos_logging устарел в пользу нового модуля ресурсов junos_logging_global и будет удалён в релизе после ‘2023-08-01’.

vyos.vyos

  • Модуль vyos_logging устарел в пользу нового модуля ресурсов vyos_logging_global и будет удален в релизе после “2023-08-01”.

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/porting_guides/porting_guide_5.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API