使用Ansible编辑JSON文件

时间:2018-11-09 08:23:57

标签: ansible file-manipulation

我正在尝试使用Ansible编辑特定的JSON文件。该文件存在于必须使用LDAP身份验证登录的远程服务器中。

文件路径为/etc/sensu/conf.d/client.json

和我要编辑的行如下:

"subscriptions": ["Nginx", "Primus", "B2B", "Docker_Process_Check", "EBS", "base"],

我想在该行中再添加一个值("filebeat"),之后应该看起来像

"subscriptions": ["Nginx", "Primus", "B2B", "Docker_Process_Check", "EBS", "base","filebeat"],

1 个答案:

答案 0 :(得分:1)

AFAIK仍然没有用于JSON操作的内置模块。

要么使用第三方模块(例如ghetto-json),要么

或使用replace模块进行复杂的正则表达式(例如,搜索"subscriptions": [<...>]并在关闭,"filebeat"之前放置]。您可以使用regex101.com来制作并测试所需的表达方式。

还请检查this的答案以获取更多信息。