在Ansible中,我正在寻找一种类似于lineinfile或替换的技术,但在使用模板时,XML文件不是一个选项.似乎是一个非常普遍的需要.
然而,使用XML文件时,需要指定一个xpath来保证元素在DOM中正确的位置存在/不存在.
该解决方案需要确保有一种替换现有节点的机制,该节点可能与目标节点看起来有点不同.
简单的例子XML文件:
<?xml version="1.0" encoding="ISO-8859-1"?> <datasources-configuration xmlns:myns="http://org.someorg.ds/config"> <datasources> <!-- varIoUs other xml --> <datasource> <name>MyDS</name> <jdbcUrl>...</jdbcUrl> </datasource> </datasources> <!-- varIoUs other xml --> </datasources-configuration>
我想要确保一个完整的多行的XML被插入/替换成目标XML文件给定一个特定的xpath表达式匹配.例如,要将以下数据源添加到数据源:
<datasource> <name>AnotherDS</name> <jdbcUrl>...</jdbcUrl> </datasource>
我看到的最好的是这个自定义模块,它打破了自己的例子:https://github.com/cmprescott/ansible-xml
这样的模块是否存在或解决方案的建议?
我只是看着自己,发现了一个看起来像一个很棒的选择的
ansible-xml模块.
原文链接:https://www.f2er.com/xml/292197.html