Spec-Zone.ru › Ansible 2.11

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

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

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

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

Этот документ является частью коллекции по переносу. Полный список руководств по переносу можно найти в руководствах по переносу.

  • Playbook
  • Устаревшие элементы
  • Модули

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

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

Playbook

  • Устаревший параметр задачи always_run был удален, используйте check_mode: no вместо него.

Устаревшие элементы

  • В модуле nxos_igmp_interface свойства oif_prefix и oif_source устарели. Используйте параметр ois_ps со словарем префикса и источника для значений вместо этого.

Модули

Основные изменения в популярных модулях подробно описаны здесь:

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

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

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

Следующие модули будут удалены в Ansible 2.10. Пожалуйста, обновите свои playbooks соответственно.

  • k8s_raw используйте k8s вместо этого.
  • openshift_raw используйте k8s вместо этого.
  • openshift_scale используйте k8s_scale вместо этого.

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

  • Параметр модуля upgrade для win_chocolatey был удален; используйте state: latest вместо этого.
  • Параметр модуля reboot для win_feature был удален; используйте плагин действия win_reboot вместо этого.
  • Модуль win_iis_webapppool больше не принимает строку для параметра модуля attributes; используйте значение словаря в свободном формате вместо этого.
  • Параметр модуля name для win_package был удален; он нигде не используется и должен быть просто удален из ваших playbooks.
  • Модуль win_regedit больше не автоматически исправляет путь hive HCCC на HKCC; используйте HKCC, так как это правильный путь hive.
  • file – Управление файлами и свойствами файлов теперь выводит предупреждение об устаревании, когда src указан с состоянием, отличным от hard или link, так как он должен использоваться только с ними. Это может повлиять на тех, кто полагался на ошибочное взаимодействие src и других состояний для размещения файлов в подкаталогах. Например:

    $ ansible localhost -m file -a 'path=/var/lib src=/tmp/ state=directory'
    

    Это создаст каталог с именем /tmp/lib. Вместо этого просто укажите полный путь назначения, как в этом примере:

    $ ansible localhost -m file -a 'path=/tmp/lib state=directory'
    
  • Модули k8s_raw и openshift_raw были переименованы в новый модуль k8s.
  • Модуль k8s поддерживает все ресурсы Kubernetes, включая ресурсы из наборов пользовательских ресурсов и агрегированных API-серверов. Это включает все ресурсы OpenShift.
  • Модуль k8s не будет принимать ресурсы, где подключаемые ключи были переименованы в snake_case. Это было обходным путём, который предполагался с модулями k8s_raw и openshift_raw.
  • Модуль k8s может не принять ресурсы, где api_version было изменено для соответствия сокращенной версии в клиенте Python Kubernetes. Теперь необходимо указать правильное полное имя Kubernetes api_version для ресурса.
  • Модуль k8s теперь может обрабатывать файлы YAML с несколькими документами, если они передаются с параметром src. Он будет обрабатывать каждый документ как отдельный ресурс. Ресурсы, предоставленные в строке с параметром resource_definition, должны оставаться одним документом.
  • Модуль k8s не будет автоматически изменять запросы создания Project на запросы создания ProjectRequest, как это делал модуль openshift_raw. Теперь необходимо явно указать тип ProjectRequest.
  • Модуль k8s больше не будет автоматически удалять секреты из значений возврата Ansible (и, следовательно, из лога). Чтобы предотвратить запись значений секретов в задаче в журнал, укажите параметр no_log в блоке задачи.
  • Модуль k8s_scale теперь поддерживает масштабируемые объекты OpenShift, такие как DeploymentConfig.
  • Модуль lineinfile был изменён, чтобы отображать предупреждение при использовании пустой строки в качестве регулярного выражения. Поскольку пустое регулярное выражение соответствует каждой строке в файле, оно заменит последнюю строку в файле, а не вставит. Если это желаемое поведение, используйте '^', которое будет соответствовать каждой строке и не будет выводить предупреждение.
  • Модули Openstack больше не используют библиотеку shade. Вместо этого используется openstacksdk. Поскольку openstacksdk должна уже присутствовать в качестве зависимости к shade, дополнительные действия не требуются.

Плагины

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

Следующие плагины будут удалены в Ansible 2.10. Пожалуйста, обновите свои playbooks соответственно.

  • openshift используйте k8s вместо этого.

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

  • Плагин поиска k8s теперь поддерживает все ресурсы Kubernetes, включая ресурсы из наборов пользовательских ресурсов и агрегированных API-серверов. Это включает все ресурсы OpenShift.
  • Плагин поиска k8s может не принять ресурсы, где api_version было изменено для соответствия сокращенной версии в клиенте Python Kubernetes. Теперь необходимо указать правильное полное имя Kubernetes api_version для ресурса.
  • Плагин поиска k8s больше не будет удалять секреты из значений возврата Ansible (и, следовательно, из лога). Чтобы предотвратить запись значений секретов в задаче в журнал, укажите параметр no_log в блоке задачи.

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

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

Сети

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

Скрипты динамического инвентаризации

  • contrib/inventory/openstack.py был переименован в contrib/inventory/openstack_inventory.py. Если вы использовали openstack.py в качестве имени файла динамической инвентаризации OpenStack, измените его на openstack_inventory.py. В противном случае имя файла вызовет конфликт с импортами из openstacksdk.

© 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.6.html

Spec-Zone.ru

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