summaryrefslogtreecommitdiff
path: root/lib/ansible/executor
diff options
context:
space:
mode:
authorBrian Coca <bcoca@users.noreply.github.com>2019-02-25 15:58:51 -0500
committerGitHub <noreply@github.com>2019-02-25 15:58:51 -0500
commit40a053ce7813445f4ffefff1e90327b5a0a8d32d (patch)
tree0e099be9422ff1de81f9db68873ceae7b30203de /lib/ansible/executor
parent30b3ce0f81f6e74ff12fc5ad3c4e24f02386ce14 (diff)
downloadansible-40a053ce7813445f4ffefff1e90327b5a0a8d32d.tar.gz
better error for bad module options (#52726)
also document clearly inline vaults don't work on 'options' fixes #52707
Diffstat (limited to 'lib/ansible/executor')
-rw-r--r--lib/ansible/executor/module_common.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/ansible/executor/module_common.py b/lib/ansible/executor/module_common.py
index d3a9c9fee8..b6c369efa0 100644
--- a/lib/ansible/executor/module_common.py
+++ b/lib/ansible/executor/module_common.py
@@ -687,7 +687,10 @@ def _find_module_utils(module_name, b_module_data, module_path, module_args, tas
if module_substyle == 'python':
params = dict(ANSIBLE_MODULE_ARGS=module_args,)
- python_repred_params = repr(json.dumps(params))
+ try:
+ python_repred_params = repr(json.dumps(params))
+ except TypeError as e:
+ raise AnsibleError("Unable to pass options to module, they must be JSON serializable: %s" % to_native(e))
try:
compression_method = getattr(zipfile, module_compression)