win_xml – Управление содержимым XML-файлов на хостах Windows
Новое в версии 2.7.
Обзор
- Управление узлами XML, атрибутами и текстом, используя xpath для выбора узлов XML, которые необходимо управлять.
- Фрагменты XML, отформатированные как строки, используются для задания желаемого состояния части или частей XML-файлов на удаленных серверах Windows.
- Для целей, отличных от Windows, используйте модуль xml вместо этого.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attribute строка | Имя атрибута, если тип 'attribute'. Требуется, если type=attribute. | |
| backup логическое значение |
| Определяет, следует ли создавать резервную копию. При установке в yes, создайте резервный файл, включая информацию о метке времени, чтобы вы могли восстановить исходный файл, если вы каким-то образом неправильно его перезаписали. |
| count логическое значение добавлено в 2.9 |
| При установке в yes, возвращается количество узлов, соответствующих выражению xpath. |
| fragment строка | Строковое представление фрагмента XML, ожидаемого по адресу xpath. Начиная с Ansible 2.9, не требуется, когда state=absent или когда count=yes. псевдонимы: xmlstring | |
| path путь / обязательно | Путь к файлу, над которым нужно выполнить операцию. псевдонимы: dest, file | |
| state строка добавлено в 2.9 |
| Установить или удалить узлы (или атрибуты), соответствующие выражению xpath. |
| type строка / обязательно |
| Тип XML-узла, с которым вы работаете. |
| xpath строка / обязательно | Выражение XPath для выбора узла или узлов, над которыми нужно выполнить операцию. |
Примечания
Примечание
- Поддерживает только работу с XML-элементами, атрибутами и текстом.
- Типы узлов пространства имен, инструкций обработки, команд и документов изменить этим модулем нельзя.
См. также
См. также
- xml – Управление частями XML-файлов или строк
- Манипуляции с XML для хостов Posix.
- w3shools Руководство по XPath
- Полезное руководство по XPath
Примеры
- name: Apply our filter to Tomcat web.xml
win_xml:
path: C:\apache-tomcat\webapps\myapp\WEB-INF\web.xml
fragment: '<filter><filter-name>MyFilter</filter-name><filter-class>com.example.MyFilter</filter-class></filter>'
xpath: '/*'
- name: Apply sslEnabledProtocols to Tomcat's server.xml
win_xml:
path: C:\Tomcat\conf\server.xml
xpath: '//Server/Service[@name="Catalina"]/Connector[@port="9443"]'
attribute: 'sslEnabledProtocols'
fragment: 'TLSv1,TLSv1.1,TLSv1.2'
type: attribute
- name: remove debug configuration nodes from nlog.conf
win_xml:
path: C:\IISApplication\nlog.conf
xpath: /nlog/rules/logger[@name="debug"]/descendant::*
state: absent
- name: count configured connectors in Tomcat's server.xml
win_xml:
path: C:\Tomcat\conf\server.xml
xpath: //Server/Service/Connector
count: yes
register: connector_count
- name: show connector count
debug:
msg="Connector count is {{connector_count.count}}"
- name: ensure all lang=en attributes to lang=nl
win_xml:
path: C:\Data\Books.xml
xpath: //@[lang="en"]
attribute: lang
fragment: nl
type: attribute
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_file строка | если backup=да | Имя резервного файла, который был создан. Пример: C:\Путь\К\Файлу.txt.11540.20150212-220915.bak |
| count целое число | если count=да | Количество узлов, соответствующих выражению xpath. Пример: 33 |
| err список | всегда, для типа element и -vvv или более | Исключения при сравнении XML. Пример: несоответствие атрибута для actual=строка |
| msg строка | всегда | Что было сделано. Пример: xml добавлен |
Статус
- Не гарантируется обратная совместимость интерфейса этого модуля. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Richard Levenberg (@richardcs)
- Jon Hawkesworth (@jhawkesworth)
Подсказка
Если вы заметите какие-либо проблемы в этом документе, вы можете изменить этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/win_xml_module.html