protect against plugins using verify incorrectly
assume false on any errors
(cherry picked from commit ef40e5e3b2
)
backport of #36591
This commit is contained in:
parent
27b1044bc1
commit
80486090d5
2 changed files with 9 additions and 2 deletions
2
changelogs/fragments/protect_bad_verify.yml
Normal file
2
changelogs/fragments/protect_bad_verify.yml
Normal file
|
@ -0,0 +1,2 @@
|
|||
bugfixes:
|
||||
- protect against bad plugin verify method https://github.com/ansible/ansible/pull/36591
|
|
@ -257,8 +257,13 @@ class InventoryManager(object):
|
|||
plugin_name = to_native(getattr(plugin, '_load_name', getattr(plugin, '_original_path', '')))
|
||||
display.debug(u'Attempting to use plugin %s (%s)' % (plugin_name, plugin._original_path))
|
||||
|
||||
# initialize
|
||||
if plugin.verify_file(source):
|
||||
# initialize and figure out if plugin wants to attempt parsing this file
|
||||
try:
|
||||
plugin_wants = bool(plugin.verify_file(source))
|
||||
except Exception:
|
||||
plugin_wants = False
|
||||
|
||||
if plugin_wants:
|
||||
try:
|
||||
# in case plugin fails 1/2 way we dont want partial inventory
|
||||
plugin.parse(self._inventory, self._loader, source, cache=cache)
|
||||
|
|
Loading…
Reference in a new issue