使用带变量名的寄存器时,ansible.parsing.yaml.objects.AnsibleUnicode对象没有属性

时间:2018-12-14 16:03:08

标签: ansible ansible-facts

可用2.7.4

以下作品:

tasks:
    - name: Launch instance
      ec2:
         key_name: "{{ keypair }}"
         .
         .
      register: ec2

    - name: Add new instance to host group
      add_host:
        hostname: "{{ item.public_ip }}"
        groupname: launched
      with_items: "{{ ec2.instances }}"

但是下面没有

tasks:
        - name: Launch instance
          ec2:
             key_name: "{{ keypair }}"
             .
             .
          register: "{{ register }}"

        - name: Add new instance to host group
          add_host:
            hostname: "{{ item.public_ip }}"
            groupname: launched
          with_items: "{{ register.instances }}"

结果为:

fatal: [localhost]: FAILED! => {"msg": "'ansible.parsing.yaml.objects.AnsibleUnicode object' has no attribute 'instances'"}

不确定是否与此相关: https://github.com/ansible/ansible/issues/19803

非常感谢您的答复

1 个答案:

答案 0 :(得分:1)

已注册的动态命名变量尚无法进行模板化。