目标:根据我通过FACT检索的字典值设置文件的内容。
换句话说,我的字典有:
clients:
client0:
bar: my stuff
我从FACT学习客户端名称,我想使用客户端名称索引到字典和retrive栏并设置为文件的内容。
- name: Copy Client File Content
copy:
dest="/opt/myfile"
content=clients[{{client_name}}].bar
owner=root
group=root
mode=0600
no_log: true
文件的预期内容是:我的东西
答案 0 :(得分:0)
这对我有用:
- hosts: localhost
vars:
clients:
client0:
bar: my stuff
client_name: client0
tasks:
- name: copy client file content
copy:
dest: ./myfile.txt
content: "{{clients[client_name].bar}}"
您的问题是您似乎试图在Jinja2变量替换之外执行变量解引用;将所有内容放在{{...}}
内是使这项工作成功的原因。