Hi,

I am introducing group_vars & children in my inventory into my Ansible 
environment as I need to update cron-tabs for different geographical 
regions using templates the basics of what you can see below. When I run 
the playbook it produces the error as seen at the bottom. A bit of research 
tells me that I am not the only 1 to see similar errors. Is this a bug that 
can be fixed with an upgrade or are there work-arounds? I've tried the vars 
file with different formatting to no avail.

Version Info : ansible 2.2.1.0

e.g. Template

{{ daily_min }} {{ daily_hr }} * * 0 /path/weekly.sh  > /dev/null 2>&1

{{ weekly_min }} {{ weekly_hr }} * * * /path/chk.sh  > /dev/null 2>&1


e.g. Group_var

---
- crons:
    - { daily-min: "15", daily-hr: "01" }
    - { weekly-min: "15", weekly-hr: "03" }




e.g. Playbook

    - name: create crontab
      tags: cron
      template:
        src: templates/cron.template
        dest: /var/spool/cron/user
        owner: root
        group: root
        mode: 0644
        backup: yes

# ansible-playbook --ask-become-pass push-crons.yml --limit hostname 
--check -vvv


ERROR! Unexpected Exception: dictionary update sequence element #0 has 
length 1; 2 is required
the full traceback was:

Traceback (most recent call last):
  File "/usr/bin/ansible-playbook", line 103, in <module>
    exit_code = cli.run()
  File "/usr/lib/python2.7/site-packages/ansible/cli/playbook.py", line 
132, in run
    inventory = Inventory(loader=loader, variable_manager=variable_manager, 
host_list=self.options.inventory)
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 98, in __init__
    self.parse_inventory(host_list)
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 165, in parse_inventory
    group.vars = combine_vars(group.vars, 
self.get_group_variables(group.name))
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 555, in get_group_variables
    self._vars_per_group[groupname] = self._get_group_variables(groupname, 
vault_password=vault_password)
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 573, in _get_group_variables
    vars = combine_vars(vars, self.get_group_vars(group))
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 775, in get_group_vars
    return self._get_hostgroup_vars(host=None, group=group, 
new_pb_basedir=new_pb_basedir, return_results=return_results)
  File "/usr/lib/python2.7/site-packages/ansible/inventory/__init__.py", 
line 839, in _get_hostgroup_vars
    host_results = self._variable_manager.add_group_vars_file(base_path, 
self._loader)
  File "/usr/lib/python2.7/site-packages/ansible/vars/__init__.py", line 
619, in add_group_vars_file
    data = self._load_inventory_file(path, loader)
  File "/usr/lib/python2.7/site-packages/ansible/vars/__init__.py", line 
577, in _load_inventory_file
    rval.update(data)
ValueError: dictionary update sequence element #0 has length 1; 2 is 
required

Thanks.


-- 
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/1f6d5354-cd89-416c-aefd-87845108d103%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to