Use inventory.get_host instead of direct access to inventory.hosts (#41860)

* Use inventory.get_host instead of direct access to inventory.hosts. Fixes #32152

* Prevent potential side effect, by using self._inventory.localhost directly instead of get_host
pull/41965/head
Matt Martz 6 years ago committed by GitHub
parent d255cf42d7
commit 1a2ef0922f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -717,7 +717,12 @@ class StrategyBase:
# the host here is from the executor side, which means it was a # the host here is from the executor side, which means it was a
# serialized/cloned copy and we'll need to look up the proper # serialized/cloned copy and we'll need to look up the proper
# host object from the master inventory # host object from the master inventory
real_host = self._inventory.hosts[host.name] real_host = self._inventory.hosts.get(host.name)
if real_host is None:
if host.name == self._inventory.localhost.name:
real_host = self._inventory.localhost
else:
raise AnsibleError('%s cannot be matched in inventory' % host.name)
group_name = result_item.get('add_group') group_name = result_item.get('add_group')
parent_group_names = result_item.get('parent_groups', []) parent_group_names = result_item.get('parent_groups', [])

Loading…
Cancel
Save