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. On Thu, Jul 24, 2014 at 4:52 PM, Michael Dur <michaelj...@gmail.com> wrote: > I have a role who's sole purpose is as a meta playbook. > It has a bunch of includes in meta/main.yml: > allow_duplicates: no > dependencies: > - { role: feature/zypper, when: "common_has_executed is defined" } > - { role: feature/rc.firewall, when: "common_has_executed is defined" } > - { role: base/base, when: "common_has_executed is defined" } > - { role: feature/perl, when: "common_has_executed is defined" } > - { role: feature/python, when: "common_has_executed is defined" } > - { role: feature/ruby, when: "common_has_executed is defined" } > > I want this to just run once, so I made a task: > > - name: log common status > set_fact: common_has_executed = "1" > > Unfortunately the task seems to be parsed before the meta includes, so > nothing runs. > > -- > 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 ansible-project+unsubscr...@googlegroups.com. > To post to this group, send email to ansible-project@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/ansible-project/77f77ecc-29f1-4077-9fd1-78e49dd02eec%40googlegroups.com > <https://groups.google.com/d/msgid/ansible-project/77f77ecc-29f1-4077-9fd1-78e49dd02eec%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 ansible-project+unsubscr...@googlegroups.com. To post to this group, send email to ansible-project@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgyd3757C3JnT85mEHf%2BbRYLrnUh3xXO5MLBAWNEkk3xdQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.