Ansible 使用另一个dict变量创建变量
在角色的“/vars/main.yml”文件中,我尝试创建另一个dict var值的变量,如下所示:Ansible 使用另一个dict变量创建变量,ansible,Ansible,在角色的“/vars/main.yml”文件中,我尝试创建另一个dict var值的变量,如下所示: livrables_list_files: - file: "myfile.zip" dest: "/tmp/mynewfile.zip" zip_app: "{{ livrables_list_files.dest }}" 但是我的playbook结果返回的错误是:“列表对象”没有属性“dest” 我想要一个变量,如: zip_app: "/tmp/mynewfile.zip"
livrables_list_files:
- file: "myfile.zip"
dest: "/tmp/mynewfile.zip"
zip_app: "{{ livrables_list_files.dest }}"
但是我的playbook结果返回的错误是:“列表对象”没有属性“dest”
我想要一个变量,如:
zip_app: "/tmp/mynewfile.zip"
是否可以访问此var?在我的例子中,即使使用json语法也可以
谢谢
问题:“错误是:'列表对象'没有属性'dest。是否可以访问此变量?”
A:是的。这是可能的。问题是第一个项目前面的破折号使变量livarables\u list\u文件
a列表。要引用列表中第一项的属性dest
,需要索引。比如说
zip_app: "{{ livrables_list_files.0.dest }}"
如果你拆下破折号
livrables_list_files:
file: "myfile.zip"
dest: "/tmp/mynewfile.zip"
可以引用词典的属性dest
livarables\u list\u文件
zip_app: "{{ livrables_list_files.dest }}"
谢谢你的帮助!