Ansible:从意图文件创建字典

2024-04-11

shell> cat myfile.yml
"ABC":
    "ABC-C01":
       - host: "a1"
         prefixlen: "19"
       - host: "a2"
         prefixlen: "19"
"DEF":
    "DEF-C01":
       - host: "d1"
         prefixlen: "19"
       - host: "d2"
         prefixlen: "19"

我从意图文件中得到的预期答案如下:

  ABC-C01:
    - a1.domain
    - a2.domain
  DEF-C01:
    - d1.domain
    - d2.domain

我能够单独获得该列表。

- include_vars:
    file: myfile.yml
    name: myfile
- set_fact:
    dc: "{{ myfile.keys()|list }}"

给出:“ABC”和“DEF”

- set_fact:
    cl: "{{ cl|default([]) + myfile[item].keys()|list }}"
  with_items: "{{ dc}}"

给出:“ABC-C01”和“DEF-C01”


将以下声明放入vars

myfile: "{{ lookup('file', 'myfile.yml')|from_yaml }}"
myfile_groups: "{{ dict(myfile.values()|
                        map('dict2items')|
                        json_query(_query)) }}"
_query: '[].[key, value[].join(``,[host, `.domain`])]'

给你想要的

myfile_groups:
  ABC-C01:
    - a1.domain
    - a2.domain
  DEF-C01:
    - d1.domain
    - d2.domain
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ansible:从意图文件创建字典 的相关文章

随机推荐

  • 从使用 List 的 .Net 调用 Java Web 服务

    我正在开发一个将由 Net 客户端使用的 Java Web 服务 该服务公开一个接受对象作为参数的方法 该对象有一个 List 类型的字段 Row 类也有一个 List 类型的字段 现在 当 Java 客户端使用此服务时 它会正确地将类型视
  • 是否可以在 React 中使用 Polymer?

    我一直在使用 React 并希望在 React 中使用 Polymer 标签 React 无法识别 Polymer 标签 因为 React 仅处理基本 DOM 标签 有没有办法将 Polymer 标签添加到 React DOM 库 对的 这
  • 有独立的Python类型转换库吗?

    是否有独立的类型转换库 我有一个仅理解字节 字符串的数据存储系统 但我可以标记元数据 例如要转换为的类型 我可以破解一些简单的类型转换器系统 就像我之前的所有其他应用程序所做的那样 或者我可以希望使用一个独立的库 除非我找不到一个 对于这样
  • 将 C# Stateful Service Fabric 应用程序从 Visual Studio 部署到 Linux

    编辑 04 06 18 gt 更新了问题的最新状态 因此 我有一个正在运行的 Net 4 6 Stateful Service 它当前在部署在 Azure 上的 Windows Service Fabric 集群上运行 从 09 2017
  • R(以前称为 Excel Solver)中预算分配的优化

    我将 Excel 中遇到的问题翻译成 R 我想以 Gesamt 由函数返回 最大化的形式分配固定预算 NrwGes lt function Budget Speed maxnrw cpcrp BudgetA lt Budget 1 Budg
  • 合并具有索引的数据帧,其中一个数据帧包含另一个数据帧(但不相同)

    例如 df1 具有形状 533 2176 指数如Elkford 5901003 DM 01010 df2 具有形状 743 12 指数如5901003 df1 索引括号中的数字将与 df2 的索引匹配 正如形状所示 一些索引根本不匹配 现在
  • Jquery修改每个循环中的元素

    使用jquery 我想循环具有 item 类的所有元素 并根据元素的索引应用不同的背景颜色 mapcolor 是颜色数组 长度 具有 item 类的元素数量 each item function i e e css background c
  • C# - 互斥锁的锁定问题

    我有一个 Web 应用程序 可以控制哪些 Web 应用程序从我们的负载均衡器获取服务流量 Web 应用程序在每个单独的服务器上运行 它在 ASP NET 应用程序状态的对象中跟踪每个应用程序的 输入或输出 状态 并且只要状态发生更改 该对象
  • WPF ControlTrigger IsMouseOver

    当我尝试更改 WPF 触发器 IsMouseOver 按钮的图像时 控件闪烁很多 此问题有任何解决方法吗 使用相对绑定并找到更深层的祖先 它必须具有永久的IsMouseOver财产
  • Javascript - 你能在错误中抛出一个对象吗?

    是否可以使用抛出一个对象Error 在下面的示例中 控制台显示undefined try throw Error foo bar catch err console log err message foo 您可以抛出自己的对象 并将 Err
  • 模板内的 MVC 助手

    我正在尝试在模板中使用 kendo MVC 助手 远程模板文件加载如下 http docs kendoui c om howto load templates external files remote templates http doc
  • 部分检查中的 Prop,但仍然未定义?

    我使用的是 Typescript 3 7 2 但在早期的 Typescript 版本中也会发生这种情况 strictNullChecks 已打开 我有这个小代码片段 interface Test one boolean two boolea
  • Android 上的 Google 身份验证令牌多久过期一次? (或者:如何不打扰奶奶)

    我正在 Android 上为我的奶奶编写一个相框应用程序 该应用程序会自动更新她的 Picasa 相册中的图片 并不是说她知道 Picasa 是什么 该应用程序将使用她注册的 Google 帐户自动登录 Picasa 并不是说她知道什么是
  • 如何通过 link_to helper 从 Rails 视图中将参数传递给控制器​​操作

    这是我的link to视野中的帮手 我想在其中附加一个参数link to标记以便我可以在操作中获取它connectTo 我无法找到正确的语法或方法 也无法理解我在 stackoverflow 上找到的一些答案 我怎样才能实现这个目标 def
  • java.lang.UnsatisfiedLinkError:找不到要加载的 DSO:libfbjni.so 结果:0

    我创建了一个新的react native项目并将我的android本机模块添加为依赖项 使用官方文档https reactnative dev docs native modules setup https reactnative dev
  • npm v6.4.1 未在 docker 内运行 `prepare`

    我正在尝试在 docker 容器内安装一个包 但是prepare脚本没有运行 这里有一个Dockerfile这复制了这个问题 FROM ubuntu 18 04 Replace shell with bash so we can sourc
  • 在 JMeter 中,您可以指定变量来填充 HTTP 请求默认值吗?

    我希望能够从 CSV 文件中读取值 或者更理想的是 properties使用 JMeter 文件 然后在多个中使用它Test Plan是在HTTP Request Defaults as the Server Name or IP 以及Po
  • Ruby on Rails 日志文件太大

    我偶然发现我的rails3 1日志文件超级大 大约21mb 就尺寸而言 这样正常吗 生产环境中的日志文件是什么样的 另外 我可以去掉日志吗 谢谢 The logRails 应用程序的文件夹包含与每个标准环境相对应的三个日志文件 随着时间的推
  • 反应道具类型错误

    我正在尝试在 codepen 中创建网络应用程序 我正在使用 React ReactDOM 一切都很好 但是当我将react router dom添加到我的项目中时 出现错误 react router dom min js 1 Uncaug
  • Ansible:从意图文件创建字典

    shell gt cat myfile yml ABC ABC C01 host a1 prefixlen 19 host a2 prefixlen 19 DEF DEF C01 host d1 prefixlen 19 host d2 p