Create state in PlayIterator for unknown hosts rather than raise errors
Since we now use the PlayIterator to carry forward failures from previous play executions, in the event that some hosts which had previously failed are not in the current inventory we now create a stub state instead of raising an error.
This commit is contained in:
parent
aa66551352
commit
313d94cc71
1 changed files with 7 additions and 4 deletions
|
@ -216,10 +216,13 @@ class PlayIterator:
|
|||
self._play.handlers.extend(play.compile_roles_handlers())
|
||||
|
||||
def get_host_state(self, host):
|
||||
try:
|
||||
return self._host_states[host.name].copy()
|
||||
except KeyError:
|
||||
raise AnsibleError("invalid host (%s) specified for playbook iteration" % host)
|
||||
# Since we're using the PlayIterator to carry forward failed hosts,
|
||||
# in the event that a previous host was not in the current inventory
|
||||
# we create a stub state for it now
|
||||
if host.name not in self._host_states:
|
||||
self._host_states[host.name] = HostState(blocks=[])
|
||||
|
||||
return self._host_states[host.name].copy()
|
||||
|
||||
def get_next_task_for_host(self, host, peek=False):
|
||||
|
||||
|
|
Loading…
Reference in a new issue