在可变变量数组上传递数字参数

时间:2019-01-21 16:13:19

标签: ansible ansible-2.x

我得到了这个可变变量数组weblogic [1] .name,它将为我提供第二个数组“ manageServer1”的名称。

weblogic:[    {      名称:“ adminServer”      地址:“ 1.1.1.1”      端口:1701      ssl:1702    },    {      名称:“ manageServer1”      地址:“ 1.1.1.2”      端口:1703      ssl:1704    }, ]

如何在数组上传递参数x = 1,weblogic [x] .name或weblogic ['x']。name不能通过?

我正在研究Ansible 2.6-2.7。

1 个答案:

答案 0 :(得分:1)

列表中缺少逗号。参见下面的示例。

> cat test.yml
---
- hosts: localhost
  gather_facts: no
  vars:
    weblogic:
      - { name: "adminServer", address: "1.1.1.1", port: 1701, ssl: 1702 }
      - { name: "manageServer1", address: "1.1.1.2", port: 1703, ssl: 1704 }
  tasks:
    - debug: var=weblogic[item].name
      loop:
        - 0
        - 1


> ansible-playbook test.yml | grep weblogic
    "weblogic[item].name": "adminServer"
    "weblogic[item].name": "manageServer1"