Spec-Zone.ru › Ansible 2.11

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Плейбук

  • Исправлена ошибка в булевых ключевых словах, из-за которой случайные строки возвращали «False», теперь они должны возвращать ошибку, если это не правильное булево значение. Пример: 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, и доступен для чтения become_user.

Плагины

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

  • До Ansible 2.10 имена плагинов поиска, переданные в качестве аргумента функции 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 через env. (#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).
  • Добавлены скрипты сборки для сборки 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 - Добавлена поддержка параметра шаблона (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 в коллекциях. Вы должны изменить свои плейбуки, чтобы использовать полные имена коллекций для них. Вы можете использовать документацию (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-scope для адресов 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 теперь int, а не строка
  • meraki_switchport — tags теперь список, а не строка
  • meraki_webhook — Запрос статуса теста теперь использует состояние запроса.

community.general

  • Переменная окружения для контекста аутентификации для плагина подключения oc.py была исправлена (K8S_CONTEXT). Она случайно использовала прописную букву k.
  • bigpanda — параметр message был переименован в deployment_message так как message используется в ядре Ansible.
  • cisco_spark — параметр модуля message был переименован в msg, поскольку message используется во внутреннем ядре Ansible.
  • 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 — добавлена недостающая информация в журналы, сгенерированные плагином обратного вызова. Это изменяет формат сообщения журнала.
  • pkgng — передача name: * с state: absent больше не удаляет все установленные пакеты из системы. Теперь это ничто.
  • pkgng — передача name: * с state: latest или state: present больше не установит все пакеты из настроенных репозиториев пакетов. Вместо этого name: *, state: latest обновит все уже установленные пакеты, а name: *, state: present — это ничто.

community.network

  • routeros_facts — разрешает несколько адресов и соседей на интерфейс. Это делает ansible_net_neighbors списком вместо словаря.

community.vmware

  • vmware_datastore_maintenancemode — теперь возвращает datastore_status вместо внутреннего ключа Ansible results.
  • vmware_guest_custom_attributes — не требует имени виртуальной машины, которое было обязательным параметром для выпусков до 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, чтобы он использовался с FQCN 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 и плагина поиска.

theforeman.foreman

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

    • katello_upload to content_upload
    • katello_sync to repository_sync
    • katello_manifest to subscription_manifest
    • foreman_search_facts to resource_info
    • foreman_ptable to partition_table
    • foreman_model to hardware_model
    • foreman_environment to 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

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 Collection (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 — Обеспечивает конфигурирование списков управления доступом (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 — Обеспечивает конфигурирование атрибутов качества обслуживания, включая policy-map и class-map.
  • Новая роль os10_raguard — Обеспечивает конфигурирование атрибутов IPv6 RA Guard.
  • Новая роль os10_route_map — Обеспечивает конфигурирование атрибутов route-map.
  • Новая роль os10_snmp — Обеспечивает конфигурирование глобальных атрибутов SNMP.
  • Новая роль os10_system — Обеспечивает конфигурирование имени хоста и алгоритма хеширования.
  • Новая роль os10_template — Роль принимает исходный строковый ввод из командной строки устройства OS10 и возвращает структурированный текст в формате словаря Python.
  • Новая роль os10_uplink — Обеспечивает конфигурирование атрибутов uplink, таких как группа uplink-state.
  • Новая роль 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 — Управление настройками phone home для FlashBlade
  • purefb_policy — Управление политиками моментальных снимков файловой системы для FlashBlade
  • purefb_proxy — Управление настройками HTTP-прокси phone home для FlashBlade
  • purefb_remote_cred — Управление удаленными учетными данными хранилища объектов на 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. Добавлены переадресации, которые будут удалены в community.network 2.0.0 (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 и развертываниях API v2. Данная функция будет удалена в 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/porting_guides/porting_guide_2.10.html

Spec-Zone.ru

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