Hi everyone,

I'm trying to get this example to work with ansible 2.0+. It does work 
correctly with 1.9.

- hosts: localhost
  vars:


    input: "top"


    base: &base
      ? a
      ? b


    top: &top
      << : *base
      ? c
      ? d

    peak: &peak
      << : *top
      ? e
      ? f

  tasks:
    - debug: var="{{ input|lower|regex_replace(' ','') }}"


    - name: Loop
      command: echo {{ item.key }}
      with_dict: "{{ input|lower|regex_replace(' ','') }}"

In short, I want to merge the dicts base, top and peak and then loop over 
all key/value pairs in the corresponding dictionary, depending on the input 
another function produces (strings).

With ansible 2.0 I get the following error:
 % ansible --version
ansible 2.0.0.2 (stable-2.0.0.1 7de237c5a1) last updated 2016/03/15 
11:07:49 (GMT +200)
  lib/ansible/modules/core: (detached HEAD ce6619bf5d) last updated 
2016/03/15 11:07:51 (GMT +200)
  lib/ansible/modules/extras: (detached HEAD 29af26884e) last updated 
2016/03/15 11:07:51 (GMT +200)
  config file = /home/fbuchmeier/.ansible.cfg
  configured module search path = Default w/o overrides 

 % ansible-playbook -c local with_dict.yml
 [WARNING]: provided hosts list is empty, only localhost is available




PLAY 
***************************************************************************


TASK [setup] 
*******************************************************************
ok: [localhost]


TASK [debug] 
*******************************************************************
ok: [localhost] => {
    "top": {
        "a": null, 
        "b": null, 
        "c": null, 
        "d": null
    }
}


TASK [Loop] 
********************************************************************
fatal: [localhost]: FAILED! => {"failed": true, "msg": "ERROR! with_dict 
expects a dict"}


PLAY RECAP 
*********************************************************************
localhost                  : ok=2    changed=0    unreachable=0    failed=1

In ansible 1.9 I get my desired result:
 % ansible --version
ansible 1.9.6 (detached HEAD 10a38a7652) last updated 2016/04/29 15:14:07 
(GMT +200)
  lib/ansible/modules/core: (detached HEAD 6972d0a291) last updated 
2016/04/29 15:14:13 (GMT +200)
  lib/ansible/modules/extras: (detached HEAD 2c073442b0) last updated 
2016/04/29 15:14:13 (GMT +200)
  configured module search path = None
 
% ansible-playbook -i environments/localhost  -c local with_dict.yml


PLAY [localhost] 
************************************************************** 


GATHERING FACTS 
*************************************************************** 
ok: [localhost]


TASK: [debug var="{{ input|lower|regex_replace(' ','') }}"] 
******************* 
ok: [localhost] => {
    "var": {
        "top": {
            "a": null,
            "b": null,
            "c": null,
            "d": null
        }
    }
}


TASK: [Loop] 
****************************************************************** 
changed: [localhost] => (item={'key': 'a', 'value': None})
changed: [localhost] => (item={'key': 'c', 'value': None})
changed: [localhost] => (item={'key': 'b', 'value': None})
changed: [localhost] => (item={'key': 'd', 'value': None})


PLAY RECAP 
******************************************************************** 
localhost                  : ok=3    changed=1    unreachable=0    failed=0

Do you have any idea how I can get this to work?

Thank you very much,

Florian.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/d5e2b03a-4e69-4bdd-9780-63f7505b29de%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to