# set\_fact on 'meta' playbook

**URL:** <https://forum.ansible.com/t/set-fact-on-meta-playbook/15772>\
**Category:** Ansible Project\
**Tags:** ansible-project\
**Created:** [July 24, 2014, 11:34pm UTC](https://forum.ansible.com/t/set-fact-on-meta-playbook/15772 "2014-07-24T23:34:05Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Michael\_DeHaan1](https://avatars.discourse-cdn.com/v4/letter/m/5e9695/32.png) [@Michael\_DeHaan1](https://forum.ansible.com/u/Michael_DeHaan1)\
**Post date:** [July 24, 2014, 11:34pm UTC](https://forum.ansible.com/t/set-fact-on-meta-playbook/15772/1 "2014-07-24T23:34:05Z")

</div>

Well… sort of, not really.

What happens when you “when” a role, it applies a “when” as the first condition of every task in the role.

So I suspect you have applied the “when” to your “set\_fact” 🙂

All the “is\_executed” stuff is generally non-idiomatic, the goal of a playbook is to allow repeated configuration, and should be written to allow reconfiguration or reassertion of configuration reliably.

If there are steps that will fail if rerun, failed\_when can be a useful guide, as can conditionals around the stat module, but just guard those specific parts.
