Variables Ansible如何通过额外变量使用dict?

Variables Ansible如何通过额外变量使用dict?,variables,ansible,Variables,Ansible,我如何通过额外的变量与dict一起使用 我尝试了解所有内容,但所有带有dict的输出都需要dict:( 这些都是文件 # vars.yml rd1: Terry: user_name:terry_liu user_birth:1994/05/11 Cary: user_name:cary_lin user_birth:1992/02/19 rd6: Jessie: user_name:jessie_chen user_birth:199

我如何通过额外的变量与dict一起使用

我尝试了解所有内容,但所有带有dict的输出都需要dict:(

这些都是文件

# vars.yml
rd1:
  Terry:
    user_name:terry_liu
    user_birth:1994/05/11
  Cary:
    user_name:cary_lin
    user_birth:1992/02/19
rd6:
  Jessie:
    user_name:jessie_chen
    user_birth:1996/11/20
  Sherry:
    user_name:sherry_hsu
    user_birth:1989/07/23
-

-

-

Inventory的主机是我的测试vm,只有一个ip,它可以是ssh

运行命令时,它输出:fatal:[172.16.1.227]:失败!=>{“msg”:“with_dict期望一个dict”}

我认为在var中需要var,但我尝试了许多不同的方法,都失败了

我的要求是发送一个float dep var并从vars.yml获取相应的数据

谢谢大家,祝大家愉快!

问题是
“{{dep}}”
的计算结果是字符串
“rd1”

这就是dict需要dict时出现错误的原因

相反,您需要
查找
和插件

with_dict: "{{ lookup('vars', dep) }}"
#command
ansible-playbook -i inventory test.yml --extra-vars 'dep=rd1'
with_dict: "{{ dep }}"
with_dict: "{{ lookup('vars', dep) }}"