Spec-Zone.ru › Ansible

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

Предупреждение

В Ansible 2.10 многие плагины и модули мигрировали в коллекции на Ansible Galaxy. Ваши playbook'ы должны продолжать работать без изменений. Рекомендуется использовать полное имя коллекции (FQCN) в своих playbook'ах в качестве явного и авторитетного указателя, какую коллекцию использовать, так как некоторые коллекции могут содержать дублирующие имена модулей. Вы можете найти коллекцию, в которую переместился модуль, в списке всех модулей.

В данном разделе рассматриваются изменения в поведении между Ansible 2.9 и Ansible 2.10.

Он призван помочь в обновлении ваших playbook'ов, плагинов и других частей вашей инфраструктуры Ansible, чтобы они работали с этой версией Ansible.

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

Начиная с версии 2.10, Ansible состоит из двух частей:

  • ansible-base, который включает командные инструменты с небольшим выбором плагинов и модулей, и
  • набор коллекций .

Руководство по переносу Ansible-base 2.10 включено в это руководство по переносу. Полный список руководств по переносу можно найти в руководствах по переносу.

  • Playbook
  • Командная строка
  • Устаревшие
  • Модули

    • Заслуживающие внимания изменения модулей
  • Плагины

    • Чувствительность к регистру имен плагинов поиска
    • Заслуживающие внимания изменения плагинов
    • Плагины действий, которые выполняют модули, должны использовать полные имена модулей
  • Перенос пользовательских скриптов
  • Руководство по переносу для v2.10.7

    • Критические изменения
    • Основные изменения
    • Устаревшие возможности
  • Руководство по переносу для v2.10.6

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

    • Критические изменения
    • Основные изменения
    • Устаревшие возможности
  • Руководство по переносу для v2.10.4

    • Критические изменения
    • Основные изменения
    • Удаленные возможности
    • Устаревшие возможности
  • Руководство по переносу для v2.10.2

    • Критические изменения
    • Основные изменения
    • Удаленные возможности
    • Устаревшие возможности
  • Руководство по переносу для v2.10.1

    • Основные изменения
    • Устаревшие возможности
  • Руководство по переносу для v2.10.0

    • Известные проблемы
    • Критические изменения
    • Основные изменения
    • Удаленные возможности
    • Устаревшие возможности

Playbook

  • Исправлена ошибка в ключевых словах boolean, из-за которой случайные строки возвращали ‘False’, теперь они должны возвращать ошибку, если это не правильное значение boolean. Пример: diff: yes- возвращал False.
  • Новый факт, ansible_processor_nproc, отражает количество vcpu, доступных процессам (возвращается к количеству vcpu, доступных планировщику).

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

  • Команда ansible-galaxy login была удалена, так как используемый ею базовый API для аутентификации GitHub закрывается. Публикация ролей или коллекций в Galaxy через ansible-galaxy теперь требует, чтобы маркер API Galaxy был передан в командную строку через файл маркера (по умолчанию ~/.ansible/galaxy_token) или (ненадежно) через аргумент --token к ansible-galaxy.

Устаревшие

  • Windows Server 2008 и 2008 R2 больше не будут поддерживаться или тестироваться в следующем выпуске Ansible, см. поддерживаются ли Server 2008, 2008 R2 и Windows 7?

Модули

Предупреждение

Ссылки на этой странице могут не указывать на самые последние версии модулей. Мы обновим их, когда сможем.

  • Версия 2.10.0 ansible-base изменила режим по умолчанию для задач на основе файлов на 0o600 & ~umask, если пользователь не указал параметр mode в задачах на основе файлов. Это было сделано в ответ на отчет CVE, который мы пересмотрели. В результате, изменение режима было отменено в 2.10.1, и режим по умолчанию теперь 0o666 & ~umask, как и в предыдущих версиях Ansible.
  • Если вы изменили какие-либо задачи, чтобы указать менее строгие разрешения при использовании 2.10.0, эти изменения не нужны (но не навредят) в 2.10.1.
  • Чтобы избежать проблемы, поднятой в CVE-2020-1736, укажите параметр mode во всех задачах на основе файлов, которые его принимают.
  • dnf и yum - Начиная с версии 2.10.1, модуль dnf (и действие yum, когда оно использует dnf) теперь правильно проверяет подписи GPG пакетов (CVE-2020-14365). Если вы видите ошибку, такую как Failed to validate GPG signature for [package name], убедитесь, что вы импортировали правильный ключ GPG для репозитория DNF и/или пакета, который вы используете. Один из способов сделать это - с помощью модуля rpm_key. Хотя мы этого не рекомендуем, в некоторых случаях может потребоваться отключить проверку GPG. Это можно сделать, явно добавив disable_gpg_check: yes в вашу задачу dnf или yum.

Заслуживающие внимания изменения модулей

  • Модули Ansible, созданные с add_file_common_args=True, добавили ряд неудокументированных аргументов, которые в основном были добавлены для облегчения реализации определенных плагинов действий. Недокументированные аргументы src, follow, force, content, backup, remote_src, regexp, delimiter, и directory_mode больше не добавляются. Модулям, полагающимся на добавление этих параметров, нужно указывать их самостоятельно.
  • Ansible больше не ищет модули Python в текущем каталоге (обычно домашний каталог remote_user), когда выполняется модуль Ansible. Это сделано для решения проблемы получения не привилегированного пользователя на OpenBSD и для уменьшения возможных атак, если текущий рабочий каталог может быть записан злоумышленником. Установите необходимые модули Python для работы модулей Ansible на управляемом узле в системном каталоге или в другом каталоге, который находится в remote_user’s $PYTHONPATH и доступен для чтения become_user.

Плагины

Чувствительность к регистру имён плагинов lookup

  • До Ansible 2.10 имена плагинов lookup, переданные в качестве аргумента функции lookup(), обрабатывались как нечувствительные к регистру в отличие от вызовов lookup через with_<lookup_name>. 2.10 обеспечивает согласованность lookup() и with_, сделав их оба чувствительными к регистру.

Заметные изменения в плагинах

  • Плагины кэширования в коллекциях могут использоваться для кэширования данных из плагинов инвентаризации. Ранее плагины кэширования в коллекциях можно было использовать только для кэширования фактов.
  • Некоторые недокументированные аргументы из FILE_COMMON_ARGUMENTS были удалены; плагины, использующие их, в частности, плагины действий, нуждаются в корректировке. Удаленные недокументированные аргументы: src, follow, force, content, backup, remote_src, regexp, delimiter, и directory_mode.

Плагины действий, выполняющие модули, должны использовать полные имена модулей

  • Плагины действий, вызывающие модули, должны по возможности передавать явные полные имена модулей в _execute_module() (например, ansible.builtin.file вместо file). Это гарантирует, что порядок поиска модулей в коллекции задачи не будет учитываться для разрешения модуля. В противном случае может использоваться модуль из коллекции, расположенной раньше в пути поиска, что не предполагалось.

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

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

Руководство по переносу для v2.10.7

Критические изменения

community.general

  • utm_proxy_auth_profile - значение возвращаемого параметра frontend_cookie_secret теперь содержит строку-заполнитель вместо параметра frontend_cookie_secret модуля (https://github.com/ansible-collections/community.general/pull/1736).

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

  • Ограничение версии коллекции community.okd до 1.0.0. Предыдущая включенная версия 1.0.1 имела зависимость от kubernetes.core и, следовательно, требовала установки дополнительной коллекции, которая не включалась в Ansible 2.10. Версия 1.0.0 по существу идентична 1.0.1, за исключением того, что она использует community.kubernetes, которая включена в Ansible 2.10.

ovirt.ovirt

  • ovirt_system_option_info - Добавление нового модуля (https://github.com/oVirt/ovirt-ansible-collection/pull/206).

servicenow.servicenow

  • добавление новых тестов (поиск без результата, поиск по многим)
  • добавление связанных тестов
  • добавление поддержки API таблицы ServiceNOW display_value exclude_reference_link и suppress_pagination_header
  • использование нового API для pysnow >=0.6.0

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

cisco.nxos

  • Модули nxos_bgp и nxos_bgp_neighbor устарели и заменены модулем ресурса nxos_bgp_global.

community.vmware

  • vmware_host_firewall_manager - создание новой правила без записи allowed_ip в словаре allowed_hosts не будет разрешено после выпуска версии 2.0.0.

Руководство по переносу для v2.10.6

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

community.general

  • Для community.general 2.0.0 модули kubevirt будут перемещены в коллекцию community.kubevirt. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или новее, не должны ничего менять.

    Если вы используете Ansible 2.9 и явно используете модули kubevirt из этой коллекции, вам необходимо изменить свои playbook и роли, чтобы использовать FQCN, начинающиеся с community.kubevirt. вместо community.general., например, заменить community.general.kubevirt_vm в задаче на community.kubevirt.kubevirt_vm.

    Если вы используете ansible-base и установили community.general вручную и полагаетесь на модули kubevirt, вы должны убедиться, что также установлена коллекция community.kubevirt. Если вы используете FQCN, например, community.general.kubevirt_vm вместо kubevirt_vm, всё будет продолжать работать, но мы всё же рекомендуем скорректировать FQCN.

community.network

  • Для community.network 2.0.0 модули Cisco NSO будут перемещены в коллекцию cisco.nso. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или новее, не должны ничего менять.

    Если вы используете Ansible 2.9 и явно используете модули Cisco NSO из этой коллекции, вам необходимо изменить свои playbook и роли, чтобы использовать FQCN, начинающиеся с cisco.nso. вместо community.network., например, заменить community.network.nso_config в задаче на cisco.nso.nso_config.

    Если вы используете ansible-base и установили community.network вручную и полагаетесь на модули Cisco NSO, вы должны убедиться, что также установлена коллекция cisco.nso. Если вы используете FQCN, например, community.network.nso_config вместо nso_config, всё будет продолжать работать, но мы всё же рекомендуем скорректировать FQCN.

  • Для community.network 2.0.0 модули FortiOS будут перемещены в коллекцию community.fortios. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или новее, не должны ничего менять.

    Если вы используете Ansible 2.9 и явно используете модули FortiOS из этой коллекции, вам необходимо изменить свои playbook и роли, чтобы использовать FQCN, начинающиеся с community.fortios. вместо community.network., например, заменить community.network.fmgr_device в задаче на community.fortios.fmgr_device.

    Если вы используете ansible-base и установили community.network вручную и полагаетесь на модули FortiOS, вы должны убедиться, что также установлена коллекция community.fortios. Если вы используете FQCN, например, community.network.fmgr_device вместо fmgr_device, всё будет продолжать работать, но мы всё же рекомендуем скорректировать FQCN.

f5networks.f5_modules

  • Добавлен параметр async_timeout в модуль bigip_ucs_fetch, чтобы можно было настроить ожидание модуля для асинхронного интерфейса.
  • Модуль bigip_ucs_fetch изменён на использование асинхронного интерфейса при генерации файлов UCS.

Руководство по переносу для v2.10.5

Изменения, требующие исправления

community.hashi_vault

  • hashi_vault - переменная среды VAULT_ADDR теперь проверяется последней для параметра url. Подробности о затронутых случаях использования см. в (https://github.com/ansible-collections/community.hashi_vault/issues/8).

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

community.general

  • Для community.general 2.0.0 модули Google будут перемещены в коллекцию community.google. Будет добавлена переадресация, чтобы пользователям, использующим ansible-base 2.10 или новее, не пришлось ничего менять.

    Если вы используете Ansible 2.9 и явно используете модули Google из этой коллекции, вам необходимо изменить ваши playbook и роли, используя FQCN, начинающиеся с community.google. вместо community.general., например, замените community.general.gcpubsub в задаче на community.google.gcpubsub.

    Если вы используете ansible-base и вручную установили community.general и полагаетесь на модули Google, вы должны убедиться, что также установлена коллекция community.google. Если вы используете FQCN, например, community.general.gcpubsub вместо gcpubsub , это будет по-прежнему работать, но мы всё равно рекомендуем изменить FQCN.

  • Для community.general 2.0.0 плагин подключения OC будет перемещен в коллекцию community.okd. Будет добавлена переадресация, чтобы пользователям, использующим ansible-base 2.10 или новее, не пришлось ничего менять.

    Если вы используете Ansible 2.9 и явно используете плагин подключения OC из этой коллекции, вам необходимо изменить ваши playbook и роли, используя FQCN community.okd.oc вместо community.general.oc.

    Если вы используете ansible-base и вручную установили community.general и полагаетесь на плагин подключения OC, вы должны убедиться, что также установлена коллекция community.okd. Если вы используете FQCN, например, community.general.oc вместо oc, это будет по-прежнему работать, но мы всё равно рекомендуем изменить этот FQCN.

  • Для community.general 2.0.0 плагин поиска hashi_vault будет перемещен в коллекцию community.hashi_vault. Будет добавлена переадресация, чтобы пользователям, использующим ansible-base 2.10 или новее, не пришлось ничего менять.

    Если вы используете Ansible 2.9 и явно используете плагин поиска hashi_vault из этой коллекции, вам необходимо изменить ваши playbook и роли, используя FQCN community.hashi_vault.hashi_vault вместо community.general.hashi_vault.

    Если вы используете ansible-base и вручную установили community.general и полагаетесь на плагин поиска hashi_vault, вы должны убедиться, что также установлена коллекция community.hashi_vault. Если вы используете FQCN, например, community.general.hashi_vault вместо hashi_vault, это будет по-прежнему работать, но мы всё равно рекомендуем изменить этот FQCN.

netbox.netbox

  • nb_inventory - Добавить dns_name опцию, которая добавляет dns_name к хосту, когда True и у устройства есть первичный IP-адрес. (#394)
  • nb_inventory - Добавить status в качестве group_by опции. (398)
  • nb_inventory - Переместить extracted_primary_ip, чтобы config_context или custom_field могли перезаписывать. (#377)
  • nb_inventory - Услуги теперь являются списком целых чисел из-за изменений в NetBox 2.10. (#396)
  • nb_lookup - Разрешить передачу ID и использовать .get вместо .filter. (#376)
  • nb_lookup - Разрешить поиск api_endpoint и token через переменные среды. (#391)

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

community.aws

  • ec2_vpc_igw_info - После 2022-06-22 значение параметра convert_tags по умолчанию будет изменено с False на True для соответствия стандартному поведению коллекции (https://github.com/ansible-collections/community.aws/pull/318).

community.docker

  • docker_container - в настоящее время published_ports может содержать сопоставления портов рядом со специальным значением all, в этом случае сопоставления портов игнорируются. Это поведение устарело для community.docker 2.0.0, в котором оно будет либо запрещено, либо это поведение будет правильно реализовано, аналогично тому, как инструмент Docker CLI обрабатывает это (https://github.com/ansible-collections/community.docker/issues/8, https://github.com/ansible-collections/community.docker/pull/60).

community.hashi_vault

  • hashi_vault - переменная среды VAULT_ADDR для параметра url будет иметь более низкий приоритет в версии 1.0.0; используйте ANSIBLE_HASHI_VAULT_ADDR для преднамеренного переопределения значения конфигурации (https://github.com/ansible-collections/community.hashi_vault/issues/8).
  • hashi_vault - переменная среды VAULT_AUTH_METHOD для параметра auth_method будет удалена в версии 2.0.0, используйте ANSIBLE_HASHI_VAULT_AUTH_METHOD вместо неё (https://github.com/ansible-collections/community.hashi_vault/issues/17).
  • hashi_vault - переменная среды VAULT_ROLE_ID для параметра role_id будет удалена в версии 2.0.0, используйте ANSIBLE_HASHI_VAULT_ROLE_ID вместо неё (https://github.com/ansible-collections/community.hashi_vault/issues/20).
  • hashi_vault - переменная среды VAULT_SECRET_ID для параметра secret_id будет удалена в версии 2.0.0, используйте ANSIBLE_HASHI_VAULT_SECRET_ID вместо неё (https://github.com/ansible-collections/community.hashi_vault/issues/20).
  • hashi_vault - переменная среды VAULT_TOKEN_FILE для параметра token_file будет удалена в версии 2.0.0, используйте ANSIBLE_HASHI_VAULT_TOKEN_FILE вместо неё (https://github.com/ansible-collections/community.hashi_vault/issues/15).
  • hashi_vault - переменная среды VAULT_TOKEN_PATH для параметра token_path будет удалена в версии 2.0.0, используйте ANSIBLE_HASHI_VAULT_TOKEN_PATH вместо неё (https://github.com/ansible-collections/community.hashi_vault/issues/15).

Руководство по переносу для v2.10.4

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

community.hrobot

  • firewall - теперь требует библиотеку ipaddress (https://github.com/ansible-collections/community.hrobot/pull/2).

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

community.general

  • Для community.general 2.0.0 модули Hetzner Robot будут перемещены в коллекцию community.hrobot. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или более поздние версии, не должны были ничего менять.

    Если вы используете Ansible 2.9 и явно используете модули Hetzner Robot из этой коллекции, вам необходимо скорректировать ваши playbook'ы и роли, чтобы использовать FQCN, начинающиеся с community.hrobot., вместо community.general.hetzner_, например, замените community.general.hetzner_firewall_info в задаче на community.hrobot.firewall_info.

    Если вы используете ansible-base и установили community.general вручную и полагаетесь на модули Hetzner Robot, необходимо убедиться, что также установлена коллекция community.hrobot. Если вы используете FQCN, т.е. community.general.hetzner_failover_ip вместо hetzner_failover_ip, это будет работать, но всё же рекомендуется скорректировать FQCN.

  • Для community.general 2.0.0 модули и плагины docker будут перемещены в коллекцию community.docker. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или более поздние версии, не должны были ничего менять.

    Если вы используете Ansible 2.9 и явно используете содержимое docker из этой коллекции, вам необходимо скорректировать ваши playbook'ы и роли, чтобы использовать FQCN, начинающиеся с community.docker. вместо community.general., например, замените community.general.docker_container в задаче на community.docker.docker_container.

    Если вы используете ansible-base и установили community.general вручную и полагаетесь на содержимое docker, необходимо убедиться, что также установлена коллекция community.docker. Если вы используете FQCN, т.е. community.general.docker_container вместо docker_container, это будет работать, но всё же рекомендуется скорректировать FQCN.

  • Для community.general 2.0.0 модули и плагины postgresql будут перемещены в коллекцию community.postgresql. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или более поздние версии, не должны были ничего менять.

    Если вы используете Ansible 2.9 и явно используете содержимое postgresql из этой коллекции, вам необходимо скорректировать ваши playbook'ы и роли, чтобы использовать FQCN, начинающиеся с community.postgresql. вместо community.general., например, замените community.general.postgresql_info в задаче на community.postgresql.postgresql_info.

    Если вы используете ansible-base и установили community.general вручную и полагаетесь на содержимое postgresql, необходимо убедиться, что также установлена коллекция community.postgresql. Если вы используете FQCN, т.е. community.general.postgresql_info вместо postgresql_info, это будет работать, но всё же рекомендуется скорректировать FQCN.

  • Коллекция community.general больше не зависит от коллекции ansible.posix (https://github.com/ansible-collections/community.general/pull/1157).

community.network

  • Для community.network 2.0.0 модули и плагины routeros будут перемещены в коллекцию community.routeros. Будет добавлена переадресация, чтобы пользователи, использующие ansible-base 2.10 или более поздние версии, не должны были ничего менять.

    Если вы используете Ansible 2.9 и явно используете содержимое routeros из этой коллекции, вам необходимо скорректировать ваши playbook'ы и роли, чтобы использовать FQCN, начинающиеся с community.routeros. вместо community.network.routeros_, например, замените community.network.routeros_api в задаче на community.routeros.api.

    Если вы используете ansible-base и установили community.network вручную и полагаетесь на содержимое routeros, необходимо убедиться, что также установлена коллекция community.routeros. Если вы используете FQCN, т.е. community.network.routeros_command вместо routeros_command, это будет работать, но всё же рекомендуется скорректировать FQCN.

  • В community.network 2.0.0 плагин fortimanager httpapi будет удален и заменён переадресацией на соответствующий плагин в коллекции fortios.fortimanager. Для пользователей Ansible 2.10 и ansible-base 2.10 это означает, что он будет продолжать работать при условии, что коллекция установлена. Для пользователей Ansible 2.9 это означает, что им необходимо скорректировать FQCN с community.network.fortimanager на fortios.fortimanager.fortimanager (https://github.com/ansible-collections/community.network/pull/151).

community.okd

  • Добавлен пользовательский модуль k8s, улучшены тесты Molecule (https://github.com/ansible-collections/community.okd/pull/7).
  • Добавлены скрипты построения downstream для построения redhat.openshift (https://github.com/ansible-collections/community.okd/pull/20).
  • Добавлен плагин соединения openshift, обновлен плагин инвентаризации, чтобы использовать его (https://github.com/ansible-collections/community.okd/pull/18).
  • Добавлен модуль openshift_process для рендеринга шаблонов и, по желанию, применения сгенерированных ресурсов (https://github.com/ansible-collections/community.okd/pull/44).
  • Добавлен модуль openshift_route для создания маршрутов из служб (https://github.com/ansible-collections/community.okd/pull/40).
  • Перенесены начальные данные из community.kubernetes (https://github.com/ansible-collections/community.okd/pull/3).
  • openshift_auth - новый модуль (перемещён из k8s_auth в community.kubernetes) (https://github.com/ansible-collections/community.okd/pull/33).

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

community.docker

  • docker_container - больше не возвращает ansible_facts (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_container - значение по умолчанию для networks_cli_compatible изменено на true (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_container - неиспользуемый параметр trust_image_content удален (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - state=build удален. Используйте present вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - container_limits, dockerfile, http_timeout, nocache, rm, path, buildargs, pull удалены. Используйте соответствующие подпараметры build вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - параметр force удален. Используйте более конкретные параметры force_* вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - параметр source теперь обязателен (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - параметр use_tls удален. Используйте tls и validate_certs вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image - значение по умолчанию для параметра build.pull изменено на false (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_image_facts - этот псевдоним больше недоступен, используйте docker_image_info вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_network - больше не возвращает ansible_facts (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_network - параметр ipam_options удален. Используйте ipam_config вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_service - больше не возвращает ansible_facts (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm - state=inspect удален. Используйте docker_swarm_info вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметр constraints удален. Используйте placement.constraints вместо него (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметры limit_cpu и limit_memory удалены. Используйте соответствующие подпараметры в limits вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметры log_driver и log_driver_options удалены. Используйте соответствующие подпараметры в logging вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметры reserve_cpu и reserve_memory удалены. Используйте соответствующие подпараметры в reservations вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметры restart_policy, restart_policy_attempts, restart_policy_delay и restart_policy_window удалены. Используйте соответствующие подпараметры в restart_config вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_swarm_service - параметры update_delay, update_parallelism, update_failure_action, update_monitor, update_max_failure_ratio и update_order удалены. Используйте соответствующие подпараметры в update_config вместо них (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_volume - больше не возвращает ansible_facts (https://github.com/ansible-collections/community.docker/pull/1).
  • docker_volume - параметр force удален. Используйте recreate вместо него (https://github.com/ansible-collections/community.docker/pull/1).

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

community.general

  • django_manage - параметр liveserver относится к больше не поддерживаемому стороннему модулю для django. Теперь он устарел и будет удален в community.general 3.0.0 (https://github.com/ansible-collections/community.general/pull/1154).
  • proxmox - значение по умолчанию для нового параметра proxmox_default_behavior изменится с compatibility на no_defaults в community.general 4.0.0. Установите параметр в явное значение, чтобы избежать предупреждения об устаревании (https://github.com/ansible-collections/community.general/pull/850).
  • proxmox_kvm - значение по умолчанию для нового параметра proxmox_default_behavior изменится с compatibility на no_defaults в community.general 4.0.0. Установите параметр в явное значение, чтобы избежать предупреждения об устаревании (https://github.com/ansible-collections/community.general/pull/850).
  • syspatch - устарел избыточный параметр apply (https://github.com/ansible-collections/community.general/pull/360).

community.network

  • Устарела поддержка connection=local для сетевых платформ, использующих персистентный фреймворк (https://github.com/ansible-collections/community.network/pull/120).

Руководство по переносу для v2.10.2

Изменения, требующие корректировки

Ansible-base

  • Команда ansible-galaxy login была удалена (см. https://github.com/ansible/ansible/issues/71560)

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

f5networks.f5_modules

  • Добавлена интеграция phone home Teem во все модули. Функциональность можно отключить, установив переменную среды F5_TEEM или параметр поставщика no_f5_teem

ovirt.ovirt

  • cluster_upgrade - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/94).
  • disaster_recovery - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/134).
  • engine_setup - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/69).
  • hosted_engine_setup - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/106).
  • image_template - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/95).
  • infra - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/92).
  • manageiq - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/97).
  • repositories - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/96).
  • shutdown_env - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/112).
  • vm_infra - Миграция роли (https://github.com/oVirt/ovirt-ansible-collection/pull/93).

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

f5networks.f5_modules

  • Удален параметр arp_state из модуля bigip_virtual_address

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

cisco.nxos

  • Устарел nxos_interface_ospf в пользу модуля nxos_ospf_interfaces.

Руководство по переносу для v2.10.1

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

community.kubernetes

  • k8s - Добавлена поддержка параметра template (https://github.com/ansible-collections/community.kubernetes/pull/230).
  • k8s_* - Добавлена поддержка зашифрованного kubeconfig и src (https://github.com/ansible-collections/community.kubernetes/pull/193).

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

cisco.nxos

  • Устарел nxos_smu в пользу модуля nxos_rpm.
  • Модуль nxos_ospf_vrf устарел в пользу модулей nxos_ospfv2 и nxos_ospfv3.

Руководство по переносу для версии v2.10.0

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

  • Из-за ограничения в pip, вы не можете pip install --upgrade из ansible-2.9 или более ранних версий в ansible-2.10 или более новые. Вместо этого необходимо явно использовать pip uninstall ansible перед установкой новой версии с помощью pip. При попытке обновления Ansible с помощью pip без предварительного удаления, установщик предупредит вас об удалении сначала.
  • Отдельные коллекции, составляющие пакет ansible-2.10.0, могут быть просмотрены независимо. Однако в настоящее время они не перечислены в ansible-galaxy. Чтобы просмотреть эти коллекции с помощью ansible-galaxy, явно укажите, где ansible установил коллекции – COLLECTION_INSTALL=$(python -c 'import ansible, os.path ; print("%s/../ansible_collections" % os.path.dirname(ansible.__file__))') ansible-galaxy collection list -p "$COLLECTION_INSTALL".
  • Эти модули fortios не автоматически перенаправляются из своих имён 2.9.x на новые имена 2.10.x в коллекциях. Вам необходимо изменить ваши playbook, чтобы использовать полностью квалифицированные имена коллекций для них. Вы можете использовать документацию (https://docs.ansible.com/ansible/2.10/collections/fortinet/fortios/) для fortinet.fortios коллекции, чтобы определить, каковы полностью квалифицированные имена коллекций.

    • fortios_address
    • fortios_config
    • fortios_firewall_DoS_policy
    • fortios_firewall_DoS_policy6
    • fortios_ipv4_policy
    • fortios_switch_controller_802_1X_settings
    • fortios_switch_controller_security_policy_802_1X
    • fortios_system_firmware_upgrade
    • fortios_system_nd_proxy
    • fortios_webfilter

community.grafana

  • grafana_datasource не правильно устанавливает пароль (#113)

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

  • cisco.nxos.nxos_igmp_interface - больше не поддерживает устаревшие oif_prefix и oif_source параметры. Они были заменены oif_ps.
  • community.grafana.grafana_dashboard - параметр message переименован в commit_message так как message используется ядром Ansible.
  • purestorage.flashblade.purefb_fs - больше не поддерживает устаревший nfs параметр. Он был заменён nfsv3.

amazon.aws

  • aws_s3 - теперь можно удалять версиированные хранилища даже когда они не пусты - установите режим удаления для удаления версиированного хранилища и всего, что в нём содержится.

ansible.windows

  • setup - Убедитесь, что ansible_date_time.epoch это секунды с момента эпохи в UTC, чтобы соответствовать POSIX фактам. ansible_date_time.epoch_local содержит секунды с момента эпохи в локальном часовом поясе для обратной совместимости.
  • setup - Теперь будет добавлять IPv6 область действия на адреса link local для ansible_ip_addresses
  • setup - ansible_processor теперь будет возвращать индекс перед другими значениями, чтобы соответствовать поведению POSIX фактов.
  • win_find - больше не фильтрует по размеру каталогов, эта функция имела много ошибок, замедляла модуль и не поддерживается сценариями с модулем find.
  • win_find - module has been refactored to better match the behaviour of the find module. Here is what has changed:
    • Если каталог, указанный в paths не существует или является файлом, он больше не будет завершаться ошибкой, а просто предупредит пользователя.
    • Точки соединения больше не отображаются как islnk, используйте isjunction для правильного отображения этих файлов. Это поведение соответствует модулю win_stat.
    • Каталоги больше не возвращают size, это соответствует поведению stat и find, и было удалено из-за трудностей в правильном отображении размера каталога.
  • win_user - Изменить проверки идемпотентности для description на регистрозависимые.
  • win_user - Изменить проверки идемпотентности для fullname на регистрозависимые.

cisco.meraki

  • meraki_device - Изменены теги со строки на список
  • meraki_device - Удалён параметр serial_lldp_cdp
  • meraki_device - Удалён параметр serial_uplink
  • meraki_intrusion_prevention - Переименовано whitedlisted_rules в allowed_rules
  • meraki_mx_l3_firewall - Ответы правил теперь в списке rules
  • meraki_mx_l7_firewall - Переименовано blacklisted_countries в blocked_countries
  • meraki_mx_l7_firewall - Переименовано whitelisted_countries в allowed_countries
  • meraki_network - Локальные и удалённые настройки страницы статуса не могут быть установлены во время создания сети
  • meraki_network - disableRemoteStatusPage ответ теперь remote_status_page_enabled
  • meraki_network - disable_my_meraki_com ответ теперь local_status_page_enabled
  • meraki_network - disable_my_meraki устарел
  • meraki_network - enable_my_meraki теперь называется local_status_page_enabled
  • meraki_network - enable_remote_status_page теперь называется remote_status_page_enabled
  • meraki_network - enabled ответ о статусе VLAN теперь vlans_enabled
  • meraki_network - tags и type теперь возвращают список
  • meraki_snmp - peer_ips теперь является списком
  • meraki_switchport - access_policy_number теперь целое число, а не строка
  • meraki_switchport - tags теперь список, а не строка
  • meraki_webhook - Проверка статуса теста теперь использует состояние запроса.

community.general

  • Переменная среды для контекста авторизации для плагина подключения oc.py была исправлена (K8S_CONTEXT). Она ошибочно использовала прописную букву «k».
  • bigpanda - параметр message переименован в deployment_message так как message используется ядром Ansible.
  • cisco_spark - параметр модуля message был переименован в msg, так как message используется внутри ядра Ansible (https://github.com/ansible/ansible/issues/39295)
  • datadog - параметр message переименован в notification_message так как message используется ядром Ansible.
  • docker_container - больше не передает информацию о не анонимных томах или связях как Volumes в демона Docker. Это увеличивает совместимость с программой командной строки docker. Обратите внимание, что если вы укажете volumes: strict в comparisons, это может привести к перезапуску существующих контейнеров, созданных с помощью docker_container из Ansible 2.9 или более ранних версий.
  • docker_container - поддержка диапазонов портов была скорректирована для большей совместимости с утилитой командной строки docker: диапазон одного порта контейнера в сочетании с диапазоном нескольких портов хоста больше не приведет к использованию только первого порта хоста, но весь диапазон будет передан Docker, чтобы был использован свободный порт в этом диапазоне.
  • hashi_vault lookup - теперь возвращает последнюю версию при использовании движка секретов KV v2. Ранее он возвращал все версии секрета, что требовало дополнительных шагов для извлечения и фильтрации нужной версии.
  • log_plays callback - добавлены недостающие данные в журналы, генерируемые плагином callback. Это изменение формата сообщений в журнале (https://github.com/ansible-collections/community.general/pull/442).
  • pkgng - передача name: * с state: absent больше не будет удалять все установленные пакеты из системы. Теперь это бесполезная операция. (https://github.com/ansible-collections/community.general/pull/569).
  • pkgng - передача name: * с state: latest или state: present больше не будет устанавливать все пакеты из настроенных репозиториев пакетов. Вместо этого name: *, state: latest обновит все уже установленные пакеты, а name: *, state: present - это бесполезная операция. (https://github.com/ansible-collections/community.general/pull/569).

community.network

  • routeros_facts - позволяет несколько адресов и соседей на интерфейсе. Это делает ansible_net_neighbors списком вместо словаря (https://github.com/ansible-collections/community.network/pull/6).

community.vmware

  • vmware_datastore_maintenancemode - теперь возвращает datastore_status вместо внутреннего ключа Ansible results.
  • vmware_guest_custom_attributes - больше не требует имени VM, которое было обязательным параметром для версий до Ansible 2.10.
  • vmware_guest_find - параметр datacenter был удалён.
  • vmware_host_kernel_manager - теперь возвращает host_kernel_status вместо внутреннего ключа Ansible results.
  • vmware_host_ntp - теперь возвращает host_ntp_status вместо внутреннего ключа Ansible results.
  • vmware_host_service_manager - теперь возвращает host_service_status вместо внутреннего ключа Ansible results.
  • vmware_tag - теперь возвращает tag_status вместо внутреннего ключа Ansible results.
  • vmware_vmkernel - параметры ip_address и subnet_mask удалены; используйте подпараметры ip_address и subnet_mask параметра network вместо них.

community.windows

  • win_pester - больше не выполняет все *.ps1 файлы в указанном каталоге из-за выполнения потенциально неизвестных скриптов. Он будет следовать стандартному поведению, выполняя только тесты для файлов, которые похожи на *.tests.ps1, встроенные в сам Pester.

community.zabbix

  • zabbix_javagateway - параметры javagateway_pidfile, javagateway_listenip, javagateway_listenport и javagateway_startpollers переименованы в zabbix_javagateway_xyz (см. UPGRADE.md).

netbox.netbox

  • Изменить ключ ip-addresses в плагине инвентаризации netbox на ip_addresses (https://github.com/netbox-community/ansible_modules/issues/139)
  • Изменено group на tenant_group в netbox_tenant.py (https://github.com/netbox-community/ansible_modules/issues/9)
  • Изменено role на prefix_role в netbox_prefix.py (https://github.com/netbox-community/ansible_modules/issues/9)
  • Неисправности модуля при отсутствии необходимых полей (https://github.com/netbox-community/ansible_modules/issues/24)
  • Переименовано netbox_interface в netbox_device_interface (https://github.com/netbox-community/ansible_modules/issues/9)
  • В этой версии несколько критических изменений из-за нового имени пространства имен и коллекции. Я посчитал необходимым изменить имя плагина поиска и плагина инвентаризации, чтобы избежать неинформативного вызова пространства имен. Ниже пример: netbox.netbox.netbox будет использоваться как для плагина инвентаризации, так и для плагина поиска, но в разных контекстах, чтобы избежать конфликтов, но не путаницы. Я переименовал плагин поиска в nb_lookup, чтобы его использовать с полным именем класса netbox.netbox.nb_lookup. Плагин инвентаризации теперь будет вызываться в файле инвентаризации по имени netbox.netbox.nb_inventory
  • Передача целых чисел через фильтры Ansible Jinja для ключа в data, требующего запроса к конечной точке, теперь выполняется путём создания словаря с ключом id. Предыдущее поведение заключалось в простой передаче целого числа, и оно преобразовывалось при нормализации данных, но у некоторых людей могут быть имена, состоящие только из целых чисел, которые неправильно преобразовывались, поэтому мы приняли решение изменить метод преобразования в целое число для API NetBox.

    tasks:
      - name: Create device within NetBox with only required information
        netbox_device:
          netbox_url: http://netbox-demo.org:32768
          netbox_token: 0123456789abcdef0123456789abcdef01234567
          data:
            name: Test66
            device_type:
              id: "{{ some_jinja_variable }}"
            device_role: Core Switch
            site: Test Site
            status: Staged
          state: present
    
  • pynetbox заменено на использование requests.Session() для управления сессией HTTP, что нарушило передачу ssl_verify при построении клиента API NetBox. Этот PR делает pynetbox 5.0.4+ новой требуемой версией pynetbox для модулей Ansible и плагина поиска. (https://github.com/netbox-community/ansible_modules/pull/269)

theforeman.foreman

  • Все модули были переименованы, чтобы убрать префиксы foreman_ и katello_. В дополнение к удалению префикса, следующие модули были дополнительно переименованы:

    • katello_upload в content_upload
    • katello_sync в repository_sync
    • katello_manifest в subscription_manifest
    • foreman_search_facts в resource_info
    • foreman_ptable в partition_table
    • foreman_model в hardware_model
    • foreman_environment в puppet_environment

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

Ansible-base

  • Команды help в ansible-doc и ansible-console будут возвращать ошибку для модулей и плагинов, документация которых не может быть обработана как YAML. Все модули и плагины, проходящие ansible-test sanity --test yamllint, не будут затронуты этим изменением.
  • Коллекции могут объявлять список поддерживаемых/тестируемых версий Ansible для данной коллекции. Выводится предупреждение, если коллекция не поддерживает версию Ansible, которая её загружает (также может быть настроено как безмолвная ошибка или фатальная ошибка). Коллекции, которые не объявляют поддерживаемые версии Ansible, не выдают предупреждение/ошибку.
  • Маршрутизация плагинов позволяет коллекциям объявлять устаревшие функции, перенаправлять целевые объекты и удалять все типы плагинов.
  • Плагины, которые импортируют пространства имён module_utils и другие пространства имён Ansible, которые были перемещены в коллекции, должны продолжать работать без изменений.
  • Данные маршрутизации, встроенные в Ansible 2.10, гарантируют, что содержимое 2.9 должно работать без изменений в 2.10. Раньше включенные модули и плагины, которые были перемещены в коллекции, по-прежнему доступны по своим исходным именам без квалификаторов, при условии, что их целевые коллекции установлены.
  • При устаревании функций в коде необходимо указать collection_name, чтобы сообщения об устаревании указывали, какая коллекция — или ansible-base — устаревает функцию. Это влияет на все вызовы Display.deprecated() или AnsibleModule.deprecate() или Ansible.Basic.Deprecate(), а также на removed_in_version/removed_at_date или deprecated_aliases в спецификациях аргументов модулей.
  • ansible-test теперь использует другой default контейнер для тестирования Ansible Collections

amazon.aws

  • ec2 module_utils - Декоратор AWSRetry больше не ловит NotFound исключения по умолчанию. NotFound исключения необходимо явно добавить с помощью catch_extra_error_codes. Некоторые модули AWS могут столкнуться с увеличением временных сбоев из-за модели конечной согласованности AWS.

ansible.netcommon

  • Добавлен плагин подключения libssh и переработан network_cli (https://github.com/ansible-collections/ansible.netcommon/pull/30)

ansible.posix

  • Коллекция Bootstrap (https://github.com/ansible-collections/ansible.posix/pull/1).

cisco.meraki

  • Переработан метод запросов для API версии 1.0 и улучшена читаемость
  • meraki_mr_rf_profile - Настройка беспроводных профилей RF.
  • meraki_mr_settings - Настройка сетевых параметров для беспроводной сети.
  • meraki_ms_l3_interface - Новый модуль
  • meraki_ms_ospf - Настройка OSPF.

community.general

  • docker_container - параметр network_mode будет установлен по умолчанию на имя первой сети в networks, если указана хотя бы одна сеть, и networks_cli_compatible имеет значение true (будет значением по умолчанию начиная с community.general 2.0.0). Установите явное значение, чтобы избежать предупреждений об устаревании, если вы указываете сети и устанавливаете networks_cli_compatible в true. Текущее значение по умолчанию (если не задано) эквивалентно default.
  • docker_container - модуль имеет новый параметр container_default_behavior, значение которого по умолчанию изменится с compatibility на no_defaults. Установите явное значение, чтобы избежать предупреждений об устаревании.
  • gitlab_user - больше не требует аргументов name, email и password при использовании state=absent.

community.grafana

  • Добавлена обработка журнала изменений для ansible 2.10 (#112)
  • grafana_datasource ; добавление параметра additional_json_data

community.kubernetes

  • Добавлен журнал изменений и фрагменты, и задокументирован процесс ведения журнала изменений (https://github.com/ansible-collections/community.kubernetes/pull/131).
  • helm - Новый модуль для управления Helm шаблонами (https://github.com/ansible-collections/community.kubernetes/pull/61).
  • helm_info - Новый модуль для получения информации о Helm шаблонах (https://github.com/ansible-collections/community.kubernetes/pull/61).
  • helm_plugin - новый модуль для управления Helm плагинами (https://github.com/ansible-collections/community.kubernetes/pull/154).
  • helm_plugin_info - новые модули для сбора информации о Helm плагинах (https://github.com/ansible-collections/community.kubernetes/pull/154).
  • helm_repository - Новый модуль для управления Helm репозиториями (https://github.com/ansible-collections/community.kubernetes/pull/61).
  • k8s - Источник инвентаризации мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s - Плагин поиска мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s - Модуль мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s_auth - Модуль мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s_config_resource_name - Плагин фильтра мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s_exec - Новый модуль для выполнения команд в контейнерах через API Kubernetes (https://github.com/ansible-collections/community.kubernetes/pull/14).
  • k8s_exec - Возвращение кода состояния (rc) для выполненной команды (https://github.com/ansible-collections/community.kubernetes/pull/158).
  • k8s_info - Модуль мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s_log - Новый модуль для получения логов контейнеров (https://github.com/ansible-collections/community.kubernetes/pull/16).
  • k8s_scale - Модуль мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • k8s_service - Модуль мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • kubectl - Плагин подключения мигрирован из Ansible 2.9 в коллекцию Kubernetes.
  • openshift - Источник инвентаризации мигрирован из Ansible 2.9 в коллекцию Kubernetes.

community.libvirt

  • Добавлен общий плагин инвентаризации libvirt
  • Удалён скрипт инвентаризации libvirt_lxc

dellemc.os10

  • Новый ролевой модуль os10_aaa - Обеспечивает настройку аутентификации, авторизации и учёта (AAA), TACACS и RADIUS серверов.
  • Новый ролевой модуль os10_acl - Обеспечивает настройку списков управления доступом.
  • Новый ролевой модуль os10_bfd - Обеспечивает настройку глобальных атрибутов BFD.
  • Новый ролевой модуль os10_bgp - Обеспечивает настройку атрибутов протокола BGP.
  • Новый ролевой модуль os10_copy_config - Этот ролевой модуль копирует резервную рабочую конфигурацию на устройство OS10.
  • Новый ролевой модуль os10_dns - Обеспечивает настройку DNS.
  • Новый ролевой модуль os10_ecmp - Обеспечивает настройку равных путей с одинаковой стоимостью (ECMP) для IPv4.
  • Новый ролевой модуль os10_fabric_summary - Обеспечивает получение информации об устройствах OS10 во всей сети.
  • Новый ролевой модуль os10_flow_monitor - Обеспечивает настройку атрибутов мониторинга потоков ACL.
  • Новый ролевой модуль os10_image_upgrade - Обеспечивает установку изображений ПО OS10.
  • Новый ролевой модуль os10_interface - Обеспечивает настройку атрибутов интерфейсов.
  • Новый ролевой модуль os10_lag - Обеспечивает настройку атрибутов групп агрегированных каналов (LAG).
  • Новый ролевой модуль os10_lldp - Обеспечивает настройку атрибутов протокола LLDP на глобальном и уровне интерфейса.
  • Новый ролевой модуль os10_logging - Обеспечивает настройку глобальных атрибутов логирования и серверов логирования.
  • Новый ролевой модуль os10_network_validation - Обеспечивает проверку проводных соединений, соседей BGP, MTU между соседями и пары VLT.
  • Новый ролевой модуль os10_ntp - Обеспечивает настройку атрибутов NTP.
  • Новый ролевой модуль os10_prefix_list - Обеспечивает настройку списков префиксов IP.
  • Новый ролевой модуль os10_qos - Обеспечивает настройку QoS, включая policy-map и class-map.
  • Новый ролевой модуль os10_raguard - Обеспечивает настройку атрибутов RA Guard для IPv6.
  • Новый ролевой модуль os10_route_map - Обеспечивает настройку атрибутов route-map.
  • Новый ролевой модуль os10_snmp - Обеспечивает настройку глобальных атрибутов SNMP.
  • Новый ролевой модуль os10_system - Обеспечивает настройку имени хоста и алгоритма хеширования.
  • Новый ролевой модуль os10_template - Модуль получает исходный текст из командной строки устройства OS10 и возвращает структурированный текст в виде словаря Python.
  • Новый ролевой модуль os10_uplink - Обеспечивает настройку атрибутов uplink, таких как группа uplink-состояний.
  • Новый ролевой модуль os10_users - Обеспечивает настройку глобальных атрибутов пользователей системы.
  • Новый ролевой модуль os10_vlan - Обеспечивает настройку атрибутов VLAN.
  • Новый ролевой модуль os10_vlt - Обеспечивает настройку VLT.
  • Новый ролевой модуль os10_vrf - Обеспечивает настройку VRF.
  • Новый ролевой модуль os10_vrrp - Обеспечивает настройку атрибутов VRRP.
  • Новый ролевой модуль os10_vxlan - Обеспечивает настройку атрибутов VXLAN.
  • Новый ролевой модуль os10_xstp - Обеспечивает настройку атрибутов xSTP.

f5networks.f5_modules

  • Разделение bigip_device_auth_radius на реализацию настройки RADIUS сервера в модуле bigip_device_auth_server. Обратитесь к документации модуля для получения подробной информации об использовании.
  • Удаление избыточных параметров в f5_provider для устранения расхождений между документацией и параметрами модуля.

gluster.gluster

  • geo_rep - Добавлен независимый модуль geo rep с другими модулями gluster (https://github.com/gluster/gluster-ansible-collection/pull/2).

ovirt.ovirt

  • ovirt_disk - Добавить резервное копирование (https://github.com/oVirt/ovirt-ansible-collection/pull/57).
  • ovirt_disk - Поддержка прямого загрузки/загрузки (https://github.com/oVirt/ovirt-ansible-collection/pull/35).
  • ovirt_host - Добавить ssh_port (https://github.com/oVirt/ovirt-ansible-collection/pull/60).
  • ovirt_vm_os_info - Создание модуля (https://github.com/oVirt/ovirt-ansible-collection/pull/26).

purestorage.flasharray

  • purefa_console - управление настройками блокировки консоли для FlashArray
  • purefa_endpoint - управление конечными точками VMware протоколов на FlashArray
  • purefa_eula - подписание или повторное подписание EULA FlashArray
  • purefa_inventory - получение информации об инвентаризации оборудования с FlashArray
  • purefa_network - управление настройками физической и виртуальной сети на FlashArray
  • purefa_pgsched - управление расписанием снимков и репликации групп защиты на FlashArray
  • purefa_pod - управление ActiveCluster подсистемами в FlashArrays
  • purefa_pod_replica - управление ссылками на реплики подсистем ActiveDR в FlashArrays
  • purefa_proxy - управление настройкой HTTPS прокси для phonehome FlashArray
  • purefa_smis - управление настройками SMI-S на FlashArray
  • purefa_subnet - управление сетевыми подсетями на FlashArray
  • purefa_timeout - управление тайм-аутом бездействия интерфейса FlashArray
  • purefa_vlan - управление VLAN интерфейсами на FlashArray
  • purefa_vnc - управление VNC для установленных приложений на FlashArray
  • purefa_volume_tags - управление тегами томов на FlashArray

purestorage.flashblade

  • purefb_alert - управление настройками электронных писем об оповещениях на FlashBlade
  • purefb_bladename - управление именем FlashBlade
  • purefb_bucket_replica - управление ссылками на реплики ведер на FlashBlade
  • purefb_connect - управление соединениями между FlashBlade
  • purefb_dns - управление настройками DNS на FlashBlade
  • purefb_fs_replica - управление ссылками на реплики файловых систем на FlashBlade
  • purefb_inventory - получение информации об инвентаризации оборудования FlashBlade
  • purefb_ntp - управление настройками NTP для FlashBlade
  • purefb_phonehome - управление настройками phonehome для FlashBlade
  • purefb_policy - управление политиками снимков файловых систем для FlashBlade
  • purefb_proxy - управление настройками HTTP прокси для phonehome FlashBlade
  • purefb_remote_cred - управление удалёнными учётными данными Object Store на FlashBlade
  • purefb_snmp_agent - изменение агента SNMP FlashBlade
  • purefb_snmp_mgr - управление SNMP менеджерами на FlashBlade
  • purefb_target - управление удалёнными S3-совместимыми целевыми устройствами для FlashBlade
  • purefb_user - управление паролем локального pureuser аккаунта на FlashBlade

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

Ansible-base

  • core - удалена поддержка check_invalid_arguments в AnsibleModule, AzureModule и UTMModule.

ansible.netcommon

  • module_utils.network.common.utils.ComplexDict был удалён

ansible.windows

  • win_stat - удалён устаревший параметр get_md55 и возвращаемое значение md5.

community.crypto

  • Модуль letsencrypt был удалён. Используйте acme_certificate вместо него.

community.general

  • conjur_variable lookup - переместился в коллекцию cyberark.conjur. Активен редирект, который будет удалён в версии 2.0.0 (https://github.com/ansible-collections/community.general/pull/570).
  • core - удалена поддержка check_invalid_arguments в UTMModule.
  • digital_ocean_* - все модули DigitalOcean переехали в коллекцию community.digitalocean . Активен редирект, который будет удалён в версии 2.0.0 (https://github.com/ansible-collections/community.general/pull/622).
  • infini_* - все модули infinidat переехали в коллекцию infinidat.infinibox . Активен редирект, который будет удалён в версии 2.0.0 (https://github.com/ansible-collections/community.general/pull/607).
  • logicmonitor - модуль был удалён в версии 1.0.0, так как он не поддерживается, а API, используемый модулем, был отключен в 2017 году (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541).
  • logicmonitor_facts - модуль был удалён в версии 1.0.0, так как он не поддерживается, а API, используемый модулем, был отключен в 2017 году (https://github.com/ansible-collections/community.general/issues/539, https://github.com/ansible-collections/community.general/pull/541).
  • mysql_* - все модули MySQL переехали в коллекцию community.mysql . Активен редирект, который будет удалён в версии 2.0.0 (https://github.com/ansible-collections/community.general/pull/633).
  • pacman - Удалён устаревший параметр recurse, используйте extra_args=--recursive вместо него
  • proxysql_* - все модули ProxySQL переехали в коллекцию community.proxysql . Активен редирект, который будет удалён в версии 2.0.0 (https://github.com/ansible-collections/community.general/pull/624).

community.network

  • onyx - все модули и плагины onyx переехали в коллекцию mellanox.onyx. Добавлены редиректы, которые будут удалены в версии 2.0.0 community.network (https://github.com/ansible-collections/community.network/pull/83).

community.vmware

  • vmware_guest_find - Удалён устаревший параметр datacenter
  • vmware_portgroup - удалены устаревшие параметры ‘inbound_policy’ и ‘rolling_order’.
  • vmware_vmkernel - Удалён устаревший параметр ip_address; используйте подпараметр ip_address в параметре network вместо него
  • vmware_vmkernel - Удалён устаревший параметр subnet_mask; используйте подпараметр subnet_mask в параметре network вместо него

community.windows

  • win_disk_image - удалено устаревшее возвращаемое значение mount_path в пользу mount_paths.
  • win_psexec - удалён устаревший параметр extra_opts.

f5networks.f5_modules

  • Удалить псевдоним _bigip_iapplx_package
  • Удалить псевдоним _bigip_security_address_list
  • Удалить псевдоним _bigip_security_port_list
  • Удалить псевдоним _bigip_traffic_group
  • Удалить модуль bigip_appsvcs_extension
  • Удалить модуль bigip_asm_policy

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

  • Модуль vyos.vyos.vyos_static_route устарел и будет удален в будущей версии; используйте vyos.vyos.vyos_static_routes вместо него.

Ansible-base

  • Использование DefaultCallback без соответствующего фрагмента документации или копирования документации.
  • hash_behaviour - Устаревший параметр hash_behaviour, будет удален в будущем.
  • Плагин инвентаризации script - параметр ‘cache’ устарел и будет удален в версии 2.12. Его использование было удалено из плагина, так как он никогда не имел никакого эффекта.

amazon.aws

  • Все модули AWS - aws_access_key, aws_secret_key и security_token станут взаимоисключающими с profile после 2022-06-01.
  • cloudformation - Параметр template_format не имел эффекта с Ansible 2.3 и будет удален после 2022-06-01
  • cloudformation - параметр template_format устарел и будет удален в будущей версии. Он игнорировался модулем с Ansible 2.3.
  • data_pipeline - Параметр version не имел эффекта и будет удален после 2022-06-01
  • ec2 - В будущей версии параметры group и group_id станут взаимоисключающими. В настоящее время group_id игнорируется, если вы передаете оба.
  • ec2_ami - Псевдоним no_device NoDevice устарел и будет удален после 2022-06-01
  • ec2_ami - Псевдоним virtual_name VirtualName устарел и будет удален после 2022-06-01
  • ec2_eip - Параметр wait_timeout не имел эффекта и будет удален после 2022-06-01
  • ec2_key - Параметр wait_timeout не имел эффекта и будет удален после 2022-06-01
  • ec2_key - Параметр wait не имел эффекта и будет удален после 2022-06-01
  • ec2_key - Параметр wait_timeout устарел и будет удален в будущей версии. Он не имел эффекта с Ansible 2.5.
  • ec2_key - Параметр wait устарел и будет удален в будущей версии. Он не имел эффекта с Ansible 2.5.
  • ec2_lc - Параметр associate_public_ip_address не имел эффекта и будет удален после 2022-06-01
  • ec2_tag - Устарел параметр list в пользу ec2_tag_info
  • ec2_tag - Поддержка list в качестве состояния устарела и будет удалена в будущей версии. ec2_tag_info может использоваться для получения тегов на ресурсе EC2.

ansible.windows

  • win_domain_computer - Устарел недокументированный параметр log_path. Этот параметр будет удален в основной версии после 2022-07-01.
  • win_domain_controller - Параметр log_path устарел и будет удален в будущей версии. Он был недокументирован и использовался только для отладки модуля.
  • win_package - Псевдоним ensure для параметра state устарел и будет удален в будущей версии. Используйте state вместо ensure.
  • win_package - Псевдоним productid для параметра product_id устарел и будет удален в будущей версии. Используйте product_id вместо productid.
  • win_package - Параметры username и password устарели и будут удалены в будущей версии. Такую же функциональность можно реализовать, используя become: yes и become_flags: logon_type=new_credentials logon_flags=netcredentials_only в задаче.
  • win_regedit - Устарело использование слешей в качестве разделителей путей. Используйте обратные слэши для избежания неоднозначности между слешем в имени ключа и слешем в качестве разделителя пути. Эта возможность будет удалена в основной версии после 2021-07-01.

community.aws

  • cloudformation - Параметр template_format не имел эффекта с Ansible 2.3 и будет удален после 2022-06-01
  • data_pipeline - Параметр version не имел эффекта и будет удален после 2022-06-01
  • data_pipeline - Параметр version устарел и будет удален в будущей версии. Он всегда игнорировался модулем.
  • ec2_eip - Параметр wait_timeout не имел эффекта и будет удален после 2022-06-01
  • ec2_eip - Параметр wait_timeout устарел и будет удален в будущей версии. Он не имел эффекта с Ansible 2.3.
  • ec2_key - Параметр wait_timeout не имел эффекта и будет удален после 2022-06-01
  • ec2_key - Параметр wait не имел эффекта и будет удален после 2022-06-01
  • ec2_lc - Параметр associate_public_ip_address не имел эффекта и будет удален после 2022-06-01
  • ec2_lc - Параметр associate_public_ip_address устарел и будет удален в будущей версии. Он всегда игнорировался модулем.
  • elb_network_lb - Текущее значение по умолчанию параметра state устарело и изменится с absent на present после 2022-06-01
  • elb_network_lb - В будущей версии поведение по умолчанию для параметра state изменится с absent на present. Для сохранения существующего поведения явно задайте значение параметра в absent.
  • iam_managed_policy - Параметр fail_on_delete не имел эффекта и будет удален после 2022-06-01
  • iam_managed_policy - Параметр fail_on_delete устарел и будет удален в будущей версии. Он всегда игнорировался модулем.
  • iam_policy - Параметр policy_document будет удален после 2022-06-01. Для сохранения существующего поведения используйте параметр policy_json и читайте файл с плагином lookup.
  • iam_policy - Значение по умолчанию для skip_duplicates изменится после 2022-06-01 с true на false.
  • iam_policy - В будущей версии значение по умолчанию для параметра skip_duplicates изменится с true на false. Для сохранения существующего поведения явно задайте его в true.
  • iam_policy - Параметр policy_document устарел и будет удален в будущей версии. Для сохранения существующего поведения используйте параметр policy_json и читайте файл с плагином lookup.
  • iam_role - Устарело значение по умолчанию purge_policies, которое изменится с true на false после 2022-06-01
  • iam_role - В будущей версии значение по умолчанию для параметра purge_policies (также известный как purge_policy) изменится с true на false
  • s3_lifecycle - Параметр requester_pays не имел эффекта и будет удален после 2022-06-01
  • s3_lifecycle - Параметр requester_pays устарел и будет удален в будущей версии. Он всегда игнорировался модулем.
  • s3_sync - Параметр retries не имел эффекта и будет удален после 2022-06-01
  • s3_sync - Параметр retries устарел и будет удален после 2022-06-01. Он всегда игнорировался модулем.

community.crypto

  • openssl_csr - Все значения параметра version кроме 1 устарели. Значение 1 обозначает текущую единственную стандартизованную версию CSR.

community.general

  • Модуль ldap_attr устарел и будет удален в будущей версии; используйте ldap_attrs вместо него.
  • airbrake_deployment - Добавлено уведомление об устаревании параметра token и развертывании через v2 API. Эта возможность будет удалена в community.general 3.0.0.
  • clc_aa_policy - Параметр wait не имел эффекта и будет удален в community.general 3.0.0.
  • clc_aa_policy - параметр wait будет удален. Он всегда игнорировался модулем.
  • docker_container - Параметр trust_image_content теперь устарел и будет удален в community.general 3.0.0. Он никогда не использовался модулем.
  • docker_container - параметр trust_image_content будет удален. Он всегда игнорировался модулем.
  • docker_container - Значение по умолчанию для container_default_behavior изменится с compatibility на no_defaults в community.general 3.0.0. Установите параметр в явное значение, чтобы избежать предупреждения об устаревании.
  • docker_container - Значение по умолчанию для network_mode изменится в community.general 3.0.0, если указана хотя бы одна сеть и networks_cli_compatible имеет значение true. См. руководство по миграции, документацию модуля или предупреждение об устаревании для получения дополнительной информации.
  • docker_stack - Значения возврата out и err устарели и будут удалены в community.general 3.0.0. Используйте stdout и stderr вместо них.
  • docker_stack - значения возврата err и out устарели. Используйте stdout и stderr вместо них.
  • helm - Модуль helm помечен как устаревший. Новая реализация доступна в коллекции community.kubernetes.
  • redfish_config - Устарели bios_attribute_name и bios_attribute_value в пользу нового параметра bios_attributes`.
  • redfish_config - Параметры bios_attribute_name и bios_attribute_value будут удалены. Для сохранения существующего поведения используйте параметр bios_attributes.
  • redfish_config и redfish_command - Поведение выбора первого ресурса System, Manager или Chassis для изменения, если их несколько, будет удалено. Используйте новый параметр resource_id для указания целевого ресурса для изменения.
  • redfish_config, redfish_command - Поведение изменения первого ресурса System, Manager или Chassis при наличии нескольких устарело. Используйте новый параметр resource_id для указания ресурса, который нужно изменить.
  • xbps - параметр force никогда не имел никакого эффекта. Теперь он устарел и будет удален в версии 3.0.0 (https://github.com/ansible-collections/community.general/pull/568).

community.vmware

  • Модуль vmware_dns_config устарел и будет удален в будущей версии; используйте vmware_host_dns вместо него.
  • vca - vca_fw, vca_nat, vca_app устарели, так как эти модули полагаются на устаревшую часть библиотеки Pyvcloud.
  • vmware_dns_config - Устарел в пользу нового модуля vmware_host_dns.
  • vmware_guest - устарело указание конфигурации CDROM в виде словаря, вместо этого используйте список.
  • vmware_tag_info - в будущей версии модуль не будет возвращать tag_facts, так как он не возвращает несколько тегов с одинаковым именем и различными идентификаторами категорий. Для сохранения существующего поведения используйте tag_info, что представляет собой список метаданных тегов.

community.zabbix

  • zabbix_proxy (модуль) - устаревает interface подопции type и main при установке типа прокси на пассивный через status=passive. Убедитесь, что эти подопции удалены из вашей игры, так как они изначально не поддерживались Zabbix.

f5networks.f5_modules

  • Устарел модуль bigip_appsvcs_extension
  • Устарело имя модуля bigip_device_facts
  • Устарело имя модуля bigiq_device_facts

© 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_2.10.html

Spec-Zone.ru

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