加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

可变的xml操作类似于lineinfile

发布时间:2020-12-16 07:42:02 所属栏目:百科 来源:网络整理
导读:在Ansible中,我正在寻找一种类似于lineinfile或替换的技术,但在使用模板时,XML文件不是一个选项.似乎是一个非常普遍的需要. 然而,使用XML文件时,需要指定一个xpath来保证元素在DOM中正确的位置存在/不存在. 该解决方案需要确保有一种替换现有节点的机制,该节
在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模块.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读