Spec-Zone.ru › Ansible 2.7

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

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

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

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

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

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

Плейбук

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

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

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

Модули

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

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

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

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

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

  • 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 был удален; он нигде не используется и его следует удалить из ваших плейбуков.
  • Модуль 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. Пожалуйста, обновите свои плейбуки соответствующим образом.

  • 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/porting_guides/porting_guide_2.6.html

Spec-Zone.ru

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