Spec-Zone.ru › Ansible

Руководство по переносу 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 было изменено для соответствия сокращенной версии в клиенте Kubernetes Python. Теперь вы должны указать полный ресурс 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 было изменено для соответствия сокращенной версии в клиенте Kubernetes Python. Теперь вы должны указать полный 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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/porting_guides/porting_guide_2.6.html

Spec-Zone.ru

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