You cannot register the result of an expression.

See what was posted about "set_fact" above, however.




On Mon, Jul 14, 2014 at 4:57 PM, Stuart Reynolds <[email protected]>
wrote:

> On Monday, July 14, 2014 12:39:23 PM UTC-7, Michael DeHaan wrote:
>>
>> well it does return content already, all the stdout and such.
>>
>
>
> I see -- but I don't see how to usefully use that in subsequent tasks
> (beyond debug).
> I can do:
>    register: result=std_out|to_json
> Or some such?
>
>
>> I think what you are saying is that have a flag that if the output of the
>> command is already JSON and you requested this behavior, return the JSON
>> datastructure in an element called "json"?
>>
>
> Yes. That's my specific problem.
>
> More generally, it raises the question: how can I operate on the results
> of an action (in code I write in playbooks and tasks vs modules)? The scope
> of what's possible isn't clear to me from the docs. Can I say, filter a
> list of results (e.g. from ec2_describe) and store the results in another
> list with an named value?
>
>
> I'm somewhat open to it, but also think that because it's possible to do
>> the "from_json" stuff with set fact, we have a bit of a solution, and it
>> *might* be used in such a minority set of use cases skimming over the
>> option for most might cause greater confusion.
>> I don't know.
>>
>> To be clear, I'm suggesting this:
>>
>> - set_fact:
>>     foo: "{{ x | from_json }}"
>>
>
> Doesn't this only assign a fact to the target host?
> In many cases, that's not the desired behavior. Suppose I want to collect
> a list of RDS instances ids by tag and perform simple operations on them
> over and over?
>
> Being able to:
>  - add variables
>  - trigger conditions
>  - filter output, join lists... etc...
>
> would be tremendously useful. I guess something like:
>
> - hosts: localhost
> - name: Describe instances
>   hosts: localhost
>   gather_facts: false # Prevents immediately logging in to hosts
>   tasks:
>   - command: aws ec2 describe-
> instances
>     after: >
>         some python code to filter the results
>         some python code to register 5 groups
>         some python code to register 2 variables (register)
> isn't possible?
>
> This is just an example, I'm already using ec2.py for much of this. But
> more fined-grained controlled is required (such as having tasks
> conditionally execute or wait on ec2_instance states which may change in
> response to prior tasks).
>
> - Stu
>
>  --
> 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/6e552272-5da4-48b4-acf7-8389265441a2%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/6e552272-5da4-48b4-acf7-8389265441a2%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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/CA%2BnsWgyVrH%2BUxDtFGfb5L4A0RLG59sOqOi%3DVkRiSWOP6q06EDw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to