package and service now check that module exists before trying to execute it
This commit is contained in:
parent
bca4e23b27
commit
7458331539
2 changed files with 6 additions and 1 deletions
|
@ -44,6 +44,10 @@ class ActionModule(ActionBase):
|
||||||
module = getattr(facts['ansible_facts'], 'ansible_pkg_mgr', 'auto')
|
module = getattr(facts['ansible_facts'], 'ansible_pkg_mgr', 'auto')
|
||||||
|
|
||||||
if module != 'auto':
|
if module != 'auto':
|
||||||
|
|
||||||
|
if module not in self._shared_loader_obj.module_loader:
|
||||||
|
return {'failed': True, 'msg': 'Could not find a module for %s.' % module}
|
||||||
|
|
||||||
# run the 'package' module
|
# run the 'package' module
|
||||||
new_module_args = self._task.args.copy()
|
new_module_args = self._task.args.copy()
|
||||||
if 'use' in new_module_args:
|
if 'use' in new_module_args:
|
||||||
|
|
|
@ -20,6 +20,7 @@ __metaclass__ = type
|
||||||
|
|
||||||
from ansible.plugins.action import ActionBase
|
from ansible.plugins.action import ActionBase
|
||||||
|
|
||||||
|
|
||||||
class ActionModule(ActionBase):
|
class ActionModule(ActionBase):
|
||||||
|
|
||||||
TRANSFERS_FILES = False
|
TRANSFERS_FILES = False
|
||||||
|
@ -43,7 +44,7 @@ class ActionModule(ActionBase):
|
||||||
if not 'failed' in facts:
|
if not 'failed' in facts:
|
||||||
module = getattr(facts['ansible_facts'], 'ansible_service_mgr', 'auto')
|
module = getattr(facts['ansible_facts'], 'ansible_service_mgr', 'auto')
|
||||||
|
|
||||||
if not module or module == 'auto':
|
if not module or module == 'auto' or module not in self._shared_loader_obj.module_loader:
|
||||||
module = 'service'
|
module = 'service'
|
||||||
|
|
||||||
if module != 'auto':
|
if module != 'auto':
|
||||||
|
|
Loading…
Reference in a new issue