diff --git a/lib/ansible/playbook/__init__.py b/lib/ansible/playbook/__init__.py index ca491406ff..4b5a483348 100644 --- a/lib/ansible/playbook/__init__.py +++ b/lib/ansible/playbook/__init__.py @@ -433,11 +433,11 @@ class PlayBook(object): def _do_setup_step(self, play): ''' get facts from the remote system ''' - host_list = self._list_available_hosts(play.hosts) - if play.gather_facts is False: return {} - elif play.gather_facts is None: + + host_list = self._list_available_hosts(play.hosts) + if play.gather_facts is None: host_list = [h for h in host_list if h not in self.SETUP_CACHE or 'module_setup' not in self.SETUP_CACHE[h]] if len(host_list) == 0: return {}