Merge pull request #6250 from dagwieers/gather_facts-once
Fix regression causing setup to run for every play
This commit is contained in:
commit
b769b4181a
2 changed files with 6 additions and 3 deletions
|
@ -475,10 +475,13 @@ class PlayBook(object):
|
|||
def _do_setup_step(self, play):
|
||||
''' get facts from the remote system '''
|
||||
|
||||
host_list = self._trim_unavailable_hosts(play._play_hosts)
|
||||
if play.gather_facts is False:
|
||||
return {}
|
||||
|
||||
host_list = self._trim_unavailable_hosts(play._play_hosts)
|
||||
elif 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 {}
|
||||
|
||||
self.callbacks.on_setup()
|
||||
self.inventory.restrict_to(host_list)
|
||||
|
|
|
@ -117,7 +117,7 @@ class Play(object):
|
|||
self.sudo = ds.get('sudo', self.playbook.sudo)
|
||||
self.sudo_user = ds.get('sudo_user', self.playbook.sudo_user)
|
||||
self.transport = ds.get('connection', self.playbook.transport)
|
||||
self.gather_facts = ds.get('gather_facts', True)
|
||||
self.gather_facts = ds.get('gather_facts', None)
|
||||
self.remote_port = self.remote_port
|
||||
self.any_errors_fatal = utils.boolean(ds.get('any_errors_fatal', 'false'))
|
||||
self.accelerate = utils.boolean(ds.get('accelerate', 'false'))
|
||||
|
|
Loading…
Reference in a new issue