Hi Mark/James,
Do you guys know if there was a bug filed on this?  I'm running into a
similar thing in 1.5.3.  If not i'll try and put together a minimal
playbook to reproduce.

thanks,
matt



On Tue, Feb 4, 2014 at 6:50 PM, James Tanner <[email protected]> wrote:

> Please file a bug for any tracebacks you find. We would definitely like to
> know if you can reproduce this on 1.4.4 or on the latest devel.
>
>
> On Tue, Feb 4, 2014 at 6:46 PM, Mark Casey <[email protected]> wrote:
>
>> For what it's worth, I tried taking out the reference to group_names and
>> instead passed into the role as a variable a list of group names to test
>> with. I still got the traceback. It doesn't happen if I just duplicate the
>> task and use multiple copies of it that are even more hard coded such as:
>> "{{ id }}_aStaticGroupName". Now the whole thing breaks horribly *past*that 
>> point because of the change, but the tracebacks stop.
>>
>> So AFAICT I get the traceback trying to use "{{ id }}_{{ item }}".
>>
>> Also I forgot to mention that I'm seeing this on v1.4.3.
>>
>> Thank you,
>> Mark
>>
>>
>> On Monday, February 3, 2014 4:01:14 PM UTC-6, Mark Casey wrote:
>>>
>>> Hello,
>>>
>>> I'm getting a traceback on a group_by, which is intended to create a
>>> group named after each of a host's existing groups, prepended by a variable
>>> that is being set with '-e' at invocation (a site/host-group ID):
>>>
>>> - name: vagrant | Create provider-agnostic ID_and_type group
>>>>   group_by: key="{{ id }}_{{ item }}"
>>>>   with_items: group_names
>>>>   when: provider == "vagrant"
>>>>
>>>
>>> The variable *provider* is also being set via '-e'. So for example, a
>>> host that was part of the dns and mail groups would be added to groups like
>>> prodSite1_dns and prodSite1_mail. These are not being set statically in an
>>> inventory file because sometimes it is run on ec2 hosts and the groups are
>>> pulled from tags, and sometimes it is run on a vagrant box and the groups
>>> are written into an inventory script.
>>>
>>> Here is what I'm getting when running with -vvvv:
>>>
>>> TASK: [iaas_gather_multi | ec2 | Create provider-agnostic ID group]
>>>> ***********
>>>> skipping: [localhost]
>>>>
>>>> TASK: [iaas_gather_multi | ec2 | Create provider-agnostic type group]
>>>> *********
>>>> skipping: [localhost]
>>>>
>>>> TASK: [iaas_gather_multi | ec2 | Create provider-agnostic ID_and_type
>>>> group] ***
>>>> skipping: [localhost]
>>>>
>>>> TASK: [iaas_gather_multi | ec2 | Create provider-agnostic
>>>> host-provisioned boolean] ***
>>>> skipping: [localhost]
>>>>
>>>> TASK: [iaas_gather_multi | debug var=group_names]
>>>> *****************************
>>>> ok: [localhost] => {
>>>>     "group_names": [
>>>>         "db",
>>>>         "webnode"
>>>>     ],
>>>>     "item": ""
>>>> }
>>>>
>>>>  TASK: [iaas_gather_multi | vagrant | Create provider-agnostic
>>>> ID_and_type group] ***
>>>> created 'group_by' ActionModule: key={{id}}_{{item}}
>>>> changed: [localhost] => (item=db) => {"changed": true, "groups":
>>>> {"vagrant-devhost_db": ["localhost"]}, "item": "db"}
>>>> created 'group_by' ActionModule: key={{id}}_{{item}}
>>>> fatal: [localhost] => Traceback (most recent call last):
>>>>   File "/usr/lib/pymodules/python2.7/ansible/runner/__init__.py", line
>>>> 394, in _executor
>>>>     exec_rc = self._executor_internal(host, new_stdin)
>>>>   File "/usr/lib/pymodules/python2.7/ansible/runner/__init__.py", line
>>>> 514, in _executor_internal
>>>>     complex_args=complex_args
>>>>   File "/usr/lib/pymodules/python2.7/ansible/runner/__init__.py", line
>>>> 685, in _executor_internal_inner
>>>>     result = handler.run(conn, tmp, module_name, module_args, inject,
>>>> complex_args)
>>>>   File 
>>>> "/usr/lib/pymodules/python2.7/ansible/runner/action_plugins/group_by.py",
>>>> line 86, in run
>>>>     del self.runner.inventory._vars_per_host[host]
>>>> KeyError: u'localhost'
>>>>
>>>>
>>>> FATAL: all hosts have already failed -- aborting
>>>>
>>>
>>> Thank you,
>>> Mark
>>>
>>  --
>> 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].
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>  --
> 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].
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
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/CAMfrScd%3DhrhO77jroAKTxMuNwaMkZAhno1GSSMt6fNn_%3DWODfw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to