Ansible变量中的列表

Ansible变量中的列表,ansible,Ansible,我有一本Ansible Playbook,我想用它作为通用的Playbook(所有人的合唱都是一样的)。 是否有任何可能的方法在InsideVars:部分中创建列表并在PlayBook中迭代它?这样我就可以编辑我的vars部分或var.yml文件 PFB是我想要的剧本的一部分 - name: Test playbook hosts: all remote_user: root vars: list_dict3: - packages: [ 'python-

我有一本Ansible Playbook,我想用它作为通用的Playbook(所有人的合唱都是一样的)。 是否有任何可能的方法在InsideVars:部分中创建列表并在PlayBook中迭代它?这样我就可以编辑我的vars部分或var.yml文件

PFB是我想要的剧本的一部分

- name: Test playbook 
  hosts: all
  remote_user: root

  vars:
    list_dict3: 
      -  packages: [ 'python-setuptools','python-dev','libfuzzy-dev','libffi-dev','screen']

  tasks:
    - name: Accessing list of dictionary
      apt: pkg={{item.packages}} state=present
      with_items: list_dict3

不确定您真正想要的是什么,因为您的变量结构非常奇怪,但要使
apt
任务正确,您应该编写:

- name: Accessing list of dictionary
  apt:
    name: "{{ item }}"
    state: present
  with_items: "{{ list_dict3[0].packages }}"

你应该更具体一些。这里的列表是什么?这里是什么?这里的字典目录是什么?不确定您真正想要的是什么。变量包:['python setuptools'、'python-dev'、'libfuzzy-dev'、'libffi-dev'、'screen']是list(类似于python中的list),抱歉混淆dict3单词它不应该有影响我想要的是一个变量,它包含应用程序列表并在apt模块中迭代。我的意思是它应该使用_项运行循环,并在“包”列表上迭代,就像在python包中一样=['python setuptools','python-dev','libfuzzy-dev','libffi-dev','screen']对于包中的pkg:os.system('apt-get install{}.format(pkg))