diff options
author | Brian Coca <bcoca@users.noreply.github.com> | 2019-02-25 15:58:51 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-02-25 15:58:51 -0500 |
commit | 40a053ce7813445f4ffefff1e90327b5a0a8d32d (patch) | |
tree | 0e099be9422ff1de81f9db68873ceae7b30203de /lib/ansible/executor | |
parent | 30b3ce0f81f6e74ff12fc5ad3c4e24f02386ce14 (diff) | |
download | ansible-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.py | 5 |
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) |