I am driving it from inventory.  That's actually a good call, adding an 
"_enable" value for every service, including the services which are never 
disabled. Thanks!  


On Saturday, December 14, 2013 9:00:26 AM UTC-8, Michael DeHaan wrote:
>
> Perhaps you could do something like this:
>
> - name: update the stuff
>   when: services[name].enabled
>   with_items: service_names
>
> It sounds like you are driving this from inventory and not the state of 
> the current system but it's not clear to me from the above.
>
>
>
>
>
> On Sat, Dec 14, 2013 at 11:54 AM, Ross Becker <[email protected]<javascript:>
> > wrote:
>
>> Well,
>>   In this case, I have a set of services, each of which needs to have 
>> some operations applied to them (the same operations across all services). 
>>  The use case really is what you see in the abstract example; there are 
>> times when some of the services have not been enabled, and if they are 
>> enabled, I need to perform the task on them, if not, I don't.  I've already 
>> got the service operations abstracted out to an ansible task, so instead of 
>> dynamically altering the list, I can simply "include" the task again if the 
>> service is enabled.  Updating a list and using with_items one time simply 
>> felt much cleaner... if it could have been done.
>>
>>
>> On Saturday, December 14, 2013 7:20:15 AM UTC-8, Michael DeHaan wrote:
>>
>>> There's no way to dynamically append to a list presently.
>>>
>>> Since you've shared an abstract example, it might be a good idea to 
>>> explain the use case and we can share some other ways to model it?
>>>
>>>
>>>
>>>
>>> On Fri, Dec 13, 2013 at 11:38 PM, Ross Becker <[email protected]>wrote:
>>>
>>>> So, I'm looking for a way to add items to a list conditionally.  The 
>>>> point of the list is to be provided for a with_items clause.  I know I can 
>>>> evaluate python in jinja expressions, but it seems that those changes may 
>>>> be localized to the expression where they are evaluated.
>>>>
>>>> Here's a general idea of what I'm attempting to do.  I have tested this 
>>>> playbook, and the output at the end is "foo", "bar", "baz", with "harpo" 
>>>>  and "groucho" nowhere to be found, and yes, I've verified that 
>>>> enable_harpo and enable_groucho evaluate to true.
>>>> ===================
>>>> - hosts: configurator
>>>>   user: root
>>>>   gather_facts: False
>>>>
>>>>   vars:
>>>>     svc_list: [ "foo", "bar", "baz" ]
>>>>
>>>>   tasks:
>>>>     - name: checkharpo
>>>>       debug: msg="Foo more {{ svc_list.append('harpo') }}"
>>>>       when: enable_harpo
>>>>
>>>>     - name: checkgroucho
>>>>       debug: msg="Foo more {{ svc_list.append('groucho') }}"
>>>>       when: enable_groucho
>>>>
>>>>     - name: listme
>>>>       debug: msg="Message for service $item"
>>>>       with_items: svc_list
>>>> ==================================
>>>>
>>>>
>>>>  -- 
>>>> 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.
>>>>
>>>
>>>
>>>
>>> -- 
>>> Michael DeHaan <[email protected]>
>>>
>>> CTO, AnsibleWorks, Inc.
>>> http://www.ansibleworks.com/
>>>
>>>   -- 
>> 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] <javascript:>.
>> To post to this group, send email to [email protected]<javascript:>
>> .
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>
>
> -- 
> Michael DeHaan <[email protected] <javascript:>>
> CTO, AnsibleWorks, Inc.
> http://www.ansibleworks.com/
>
>  

-- 
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.

Reply via email to