您好我有一个盐状态文件,其扩展名为“.sls”,并且正在使用jinja模板
我正在jinja模板中创建一个列表。问题是当我运行该文件然后列表转换为JSON,它将每个元素周围的双引号转换为单引号,这会导致错误。
{%- set opentsdb_hosts = [] -%}
{%- for host in salt['pnda.opentsdb_hosts']() -%}
{%- do opentsdb_hosts.append("http://%s:%s" % (host, opentsdb_port)) -%}
{%- endfor -%}
如您所见,我正在创建一个名称为 opentsdb_hosts 的列表。 opentsdb_hosts 中的每个元素都应该有一个双引号。但它正在做单引号。
请帮忙。
答案 0 :(得分:0)
您必须直接使用opentsdb_hosts
输出{{ opentsdb_hosts }}
,并将其以python友好的格式输出,通常比单引号更喜欢单引号(尽管两个引号在python中都可以作为有效字符串使用)文字)。
要将opentsdb_hosts
输出为json,只需使用salt提供的json渲染器,即{{ opentsdb_hosts | json }}
。