【问题标题】:Problems managing dicts info in ansible在 ansible 中管理 dicts 信息的问题
【发布时间】:2021-08-18 11:41:40
【问题描述】:

我正在尝试在 jinja 模板中编写一个 ansible 注册变量。这个变量似乎是一个字典,我不太明白为什么,因为当我使用调试模块提示它时,系统不会像字典一样显示它。

过去,当我使用带有 REST API 的 python 时,我使用下一行来使输出更具可读性:

json.dumps(print_data,sort_keys=True,indent=4, separators=(',', ': '))

我可以在 ansible 中做这样的事情吗?

从模板生成的当前文件具有下一个格式:

{'internal1': {'rx_packets': 4601675, 'name': 'internal1', 'rx_bytes': 556664119, 'tx_errors': 0, 'duplex': 1, 'ip': 'x.x.x.x', 'mask': 24, 'alias': '(V
LAN OT)', 'mac': '00:00:00:00:00:00', 'link': True, 'rx_errors': 0, 'tx_bytes': 432861677, 'tx_packets': 3227977, 'id': 'internal1', 'speed': 1000}

提前致谢!

【问题讨论】:

  • editMCVE 联系您的问题。没有人能猜到你的输入数据在开始时是什么样子的,以及你用来输出文件的模板的内容是什么。谢谢。
  • 抱歉,我正在从主机获取输入数据,我尝试通过使用复制模块和 nice_to_json 选项来解决它,但它没有解决任何问题。最后,我能够通过在 jinja 模板中使用“nice_to_json”过滤器来解决它

标签: python ansible jinja2


【解决方案1】:

最后,

我得到了答案。我在 jinja2 模板中添加了“nice_to_json”过滤器,这使得人类更具可读性。正如我的简短经验告诉我的,不要在剧本中使用它,它不能正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-02
    • 1970-01-01
    • 2020-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-03
    相关资源
    最近更新 更多