I feel like this has to be a bug of some kind. I can use the exact code for 
the set_fact action plugin and I get no difference in the results. It 
certainly looks like I am doing exactly what ansible is doing internally, 
but getting different results.

--John

On Tuesday, November 2, 2021 at 9:59:58 AM UTC-4 [email protected] 
wrote:

> I'm using action plugins to collect data from an internal API. We've been 
> setting the "ansible_facts" key of the results dictionary to return values. 
> Most of the time, this seems to work as if we had called set_fact. But if 
> we use set_fact on the same variable, ansible_facts doesn't overwrite the 
> value. Is this expected behavior?
>
> https://pastebin.com/553q7PNH -- playbook example
> https://pastebin.com/aeAWyZhp -- set_contact_id.py action_plugin
> https://pastebin.com/zrh2MLKZ - ansible results
>
> From the results, you can see that the contact_id is initially unset, so 
> the display is 0.
> Then the action_plugin uses ansible_facts to set it to 15731, which is 
> displayed.
> Then I call set_fact, which changes the value to 22124.
> Finally, I try to update the value by calling the action_plugin again. 
> This time, I see ansible_facts has the contact_id value set to 11131, but 
> when I display it, I still see 22124. The ansible_facts from the action 
> plugin did not overwrite the value. Is this expected behavior, or am I 
> doing something wrong?
>
> Thanks.
>
> --John
>
>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/fd8170c9-dc56-4834-9867-d82fda8df6f2n%40googlegroups.com.

Reply via email to